Я запускаю активность распознавания голоса в классе non activity (путем передачи в операции) вот код:
private static void startVoiceRecognitionActivity() {
// TODO Auto-generated method stub
Intent intent = new Intent(RecognizerIntent.ACTION_RECOGNIZE_SPEECH);
intent.putExtra(RecognizerIntent.EXTRA_LANGUAGE_MODEL,
RecognizerIntent.LANGUAGE_MODEL_FREE_FORM);
intent.putExtra(RecognizerIntent.EXTRA_PROMPT,
"Talk");
myActivity.startActivityForResult(intent, REQUEST_CODE);
}
Последняя строка myActivity
- это активность, которую я передал классу, у которого есть этот метод.
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
for (final EditText editText : editTextHandlingList) {
if (requestCode == REQUEST_CODE && resultCode == theActivity.RESULT_OK) {
ArrayList<String> results = data
.getStringArrayListExtra(RecognizerIntent.EXTRA_RESULTS);
//log the result }
}
}
Теперь проблема заключается в методе onActivityResult
. Я хочу, чтобы вернуть результат обратно в один класс, а не в работу.
Если это смутно, задайте мне вопросы..
Как я передаю активность этому классу, есть ли способ, которым я могу это сделать? Должен быть какой-то способ справиться с этим снаружи. Если у вас есть вопросы, спросите меня.