首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >未注册的服务: android.speech.tts.TextToSpeech

未注册的服务: android.speech.tts.TextToSpeech
EN

Stack Overflow用户
提问于 2015-01-02 10:49:51
回答 1查看 2.7K关注 0票数 6

我正在测试我的应用程序的可访问性。如果在中间期间用户关闭了可访问性,那么应用程序就会崩溃,原因服务没有注册: android.speech.tts.TextToSpeech。我在setJavaScriptEnabled方法中调用了onDetachedFromWindow (False),但是没有用。仍然会有错误出现。

我没有在webview中使用应用程序上下文,因为webview正在使用xml进行初始化。

代码语言:javascript
复制
 java.lang.IllegalArgumentException: Service not registered: android.speech.tts.TextToSpeech$Connection@49df6be0
   at android.app.LoadedApk.forgetServiceDispatcher(LoadedApk.java:940)
   at android.app.ContextImpl.unbindService(ContextImpl.java:1983)
   at android.content.ContextWrapper.unbindService(ContextWrapper.java:541)
   at android.speech.tts.TextToSpeech$Connection.disconnect(TextToSpeech.java:1575)
   at android.speech.tts.TextToSpeech$1.run(TextToSpeech.java:732)
   at android.speech.tts.TextToSpeech$1.run(TextToSpeech.java:727)
   at android.speech.tts.TextToSpeech$Connection.runAction(TextToSpeech.java:1595)
   at android.speech.tts.TextToSpeech.runAction(TextToSpeech.java:629)
   at android.speech.tts.TextToSpeech.runActionNoReconnect(TextToSpeech.java:615)
   at android.speech.tts.TextToSpeech.shutdown(TextToSpeech.java:727)
   at com.android.org.chromium.content.browser.accessibility.AccessibilityInjector$TextToSpeechWrapper.shutdownInternal(AccessibilityInjector.java:462)
   at com.android.org.chromium.content.browser.accessibility.AccessibilityInjector.removeAccessibilityApis(AccessibilityInjector.java:296)
   at com.android.org.chromium.content.browser.accessibility.JellyBeanAccessibilityInjector.removeAccessibilityApis(JellyBeanAccessibilityInjector.java:97)
   at com.android.org.chromium.content.browser.accessibility.AccessibilityInjector.addOrRemoveAccessibilityApisIfNecessary(AccessibilityInjector.java:162)
   at com.android.org.chromium.content.browser.ContentViewCore.setInjectedAccessibility(ContentViewCore.java:2884)
   at com.android.org.chromium.content.browser.ContentViewCore.setAccessibilityState(ContentViewCore.java:2875)
   at com.android.org.chromium.content.browser.ContentViewCore$16.onChange(ContentViewCore.java:2839)
   at android.database.ContentObserver$NotificationRunnable.run(ContentObserver.java:180)
   at android.os.Handler.handleCallback(Handler.java:733)
   at android.os.Handler.dispatchMessage(Handler.java:95)
   at android.os.Looper.loop(Looper.java:157)
   at android.app.ActivityThread.main(ActivityThread.java:5356)
   at java.lang.reflect.Method.invokeNative(Method.java)
   at java.lang.reflect.Method.invoke(Method.java:515)
   at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1265)
   at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1081)
   at dalvik.system.NativeStart.main(NativeStart.java)
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-01-07 09:40:39

终于解决了。我必须从xml文件中移动所有的webview,并动态地添加它们并传递应用程序上下文。

代码语言:javascript
复制
WebView webView = new WebView(getApplicationContext());
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/27740935

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档