Glass VoiceListener вызывает исключение недопустимого аргумента

#java #android #google-glass #voice-recognition #google-gdk

#java #Android #google-glass #распознавание голоса #google-gdk

Вопрос:

Итак, у меня был GlassVoice.jar VoiceListener работал над Glass, пока я не изменил несколько вещей. Во-первых, я обновил Glass до XE18.11, а во-вторых, я переместил VoiceListener в его собственный поток за пределами основного действия. Теперь, когда я запускаю код, я получаю следующую ошибку:

06-24 12:46:35.844: E / AndroidRuntime(5425): ФАТАЛЬНОЕ ИСКЛЮЧЕНИЕ: main 06-24 12:46:35.844: E / AndroidRuntime(5425): Процесс: com.myapp, PID: 5425 06-24 12:46:35.844: E /AndroidRuntime(5425): java.lang.Исключение IllegalArgumentException: Неизвестный тип URI: 1279544898 06-24 12:46:35.844: E / AndroidRuntime(5425): в android.os.Parcel.readException(Parcel.java:1469) 06-24 12:46:35.844: E / AndroidRuntime(5425): в android.os.Parcel.readException (Посылка.java:1419) 06-24 12:46:35.844: E / AndroidRuntime(5425): на com.google.glass.voice.IVoiceService$Stub$Proxy.setConfig (неизвестный источник) 06-24 12:46:35.844: E/ AndroidRuntime(5425): в com.google.glass.input.VoiceInputHelper.setVoiceConfig(неизвестный источник) 06-24 12:46:35.844: E / AndroidRuntime(5425): в com.myapp.voice_recognition.VoiceRecognitionThread$MyVoiceListener.onVoiceServiceConnected(VoiceRecognitionThread.java:183) 06-24 12:46:35.844: E/AndroidRuntime(5425): на com.google.glass.input.VoiceInputHelper.dispatchVoiceServiceConnected(неизвестный источник) 06-24 12:46:35.844: E / AndroidRuntime(5425): на com.google.glass.input.VoiceInputHelper.доступ $ 400 (неизвестный источник) 06-24 12:46:35.844: E/ AndroidRuntime(5425): в com.google.glass.input.VoiceInputHelper $ 2.handleMessage (неизвестный источник) 06-24 12:46:35.844: E / AndroidRuntime(5425): в android.os.Handler.DispatchMessage(Handler.java:102) 06-24 12:46:35.844: E / AndroidRuntime(5425): в android.os.Looper.loop(Looper.java:149) 06-24 12:46:35.844: E / AndroidRuntime(5425): в android.app.ActivityThread.main(ActivityThread.java:5061) 06-24 12:46:35.844: E/ AndroidRuntime(5425): в java.lang.reflect.Метод.вызывающий (собственный метод) 06-24 12:46:35.844: E/ AndroidRuntime(5425): в java.lang.reflect.Метод.invoke(Метод.java:515) 06-24 12:46:35.844: E/AndroidRuntime(5425): в com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:786) 06-24 12:46:35.844: E / AndroidRuntime (5425): вcom.android.internal.os.ZygoteInit.main(ZygoteInit.java:602) 06-24 12:46:35.844: E/AndroidRuntime(5425): в dalvik.system.NativeStart.main(собственный метод)

Я подумал, что что-то могло измениться в jar из-за обновления программного обеспечения, поэтому я удалил apk GlassVoice и переделал процесс apk-> jar, но когда я использую новый jar, я даже не могу загрузить приложение, потому что у меня заканчивается память. Я действительно не знаю, почему это происходит.

Есть мысли? Код такой же, как и при его работе, но если вам нужно его просмотреть, я могу его предоставить.

ОБНОВЛЕНИЕ: я использовал git, чтобы вернуться к нему, прежде чем переместить слушателя в новый поток. Эта версия работала на 100% на XE12. Теперь он не работает, та же ошибка. Те же проблемы с памятью при попытке использовать новый jar. Мысли?

Ответ №1:

Мне все еще не повезло получить GlassVoice.jar код, который я получил от XE12 для работы, поэтому я решил проблему нехватки памяти при использовании нового GlassVoice.jar, который я извлек из XE18.11. Я увеличил объем памяти Eclipse до рекомендуемых уровней, но он все равно не работал. Я удвоил рекомендуемые уровни, и это, наконец, прошло. У меня есть голосовые команды обратно.