Почему невозможно использовать средство записи речи на эмуляторе Android?

Я пытаюсь запустить средство записи речи, которое поставляется с эмулятором Android 2.2. Проблема в том, что в тот момент, когда я нажимаю кнопку «Запись»:

enter image description here

Он прерывается с сообщением об ошибке «Приложение Speech Recorder (процесс com.android.speechrecorder) неожиданно остановилось. Пожалуйста, попробуйте еще раз. »

enter image description here

Проблема в том, что повторная попытка не помогает.

Я искал StackOverflow, прочесал весь Интернет и нашел много сообщений об одной и той же проблеме, без какого-либо рабочего решения.

Я пришел к выводу, что по какой-то странной причине эмулятор Android может использовать аудиоустройство Windows для вывода, но не для ввода.

Почему?

Я знаю, что у другого программного обеспечения виртуализации (например, VMWare) нет проблем с использованием как выходных, так и входных секций аудиоустройства хоста.

Кроме того, если Speech Recorder никогда не работал с эмулятором ни для кого, зачем его туда помещать?

Конечно, это сработало. для кого-то. Есть ли способ заставить программу записи речи работать и у меня?

Я использую 32-разрядную версию Windows XP, и мой AVD определяется с помощью SD-карты (установленной при запуске).

Обновление : Я следил предложение @Klaus попробовать и посмотреть, выбрасываются ли какие-либо исключения. Я сделал это, просто набрав ddms. bat в командной строке для запуска автономной версии DDMS (с отображением logcat внизу). Разумеется, при нажатии кнопки «Запись» я получаю следующее исключение:

03-29 14:16:58.195: ERROR/AudioRecord(303): Could not get audio input for record source 1
03-29 14:16:58.195: ERROR/srec_jni(303): initCheck error -22 
03-29 14:16:58.205: DEBUG/SpeechRecorderActivity(303): run audio capture thread
03-29 14:16:58.205: WARN/dalvikvm(303): threadid=8: thread exiting with uncaught exception (group=0x4001d800)
03-29 14:16:58.215: ERROR/AndroidRuntime(303): FATAL EXCEPTION: Thread-9
03-29 14:16:58.215: ERROR/AndroidRuntime(303): java.lang.NullPointerException
03-29 14:16:58.215: ERROR/AndroidRuntime(303):     at com.android.speechrecorder.SpeechRecorderActivity$4.run(SpeechRecorderActivity.java:192)
03-29 14:16:58.285: WARN/ActivityManager(59):   Force finishing activity com.android.speechrecorder/.SpeechRecorderActivity
03-29 14:16:58.904: DEBUG/dalvikvm(59): GC_FOR_MALLOC freed 13324 objects / 656184 bytes in 197ms
03-29 14:16:59.915: INFO/ARMAssembler(59): generated scanline__00000077:03515104_00000000_00000000 [ 33 ipp] (47 ins) at [0x20db68:0x20dc24] in 1247352 ns
03-29 14:17:05.251: DEBUG/SpeechRecorderActivity(303): stopRecording

Как мне продолжить? Я не писал приложение Speech Recorder, поэтому я не знаю, что вызывает исключение NullPointerException в строке 192 SpeechRecorderActivity.java. Я считаю, что это как-то связано с более ранним сообщением logcat:

Не удалось получить аудиовход для записи источник 1

Но снова возникает вопрос: почему?

Почему не удалось «получить аудиовход для источника записи 1»?

13
задан srf 29 March 2011 в 14:22
поделиться