gpt4 book ai didi

java - Android SpeechRecognizer 只能在应用程序的主线程中使用

转载 作者:行者123 更新时间:2023-11-30 01:38:35 24 4
gpt4 key购买 nike

我正在尝试将一些 Android 语音 API 集成到我的基于 AndEngine 的游戏中。

我将代码放在 BaseGame Activity 中 - 但是在运行时出现此错误:

05-06 23:51:28.955: ERROR/AndroidRuntime(553): java.lang.RuntimeException: SpeechRecognizer 只能在应用程序的主线程中使用

如何访问应用程序主线程?我怎样才能确保我的语音代码在其中运行。

设置如下:

主类 - BaseGameActivity演讲课

主类实例化一个新的 SpeechClass + 调用其方法 - 然后我收到上述错误。

请告诉我如何正确地做到这一点。

最佳答案

通过执行以下操作在主线程上调用 SpeechClass:

final SpeechClass c = getSpeechClass(); // get the speech class

View v = findViewById(R.id.anyview); //fetch a View: any one will do

v.post(new Runnable(){ public void run(){ c.doSomething(); }});

这应该在主线程上运行它。如果 doSomething 需要一段时间,可能会降低你的 UI 速度,但你可以解决这个问题。

关于java - Android SpeechRecognizer 只能在应用程序的主线程中使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5968646/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com