このコードは実際にAndroid(2.2以降)のUIスレッドで実行されますか?そうでない場合は、それを行う方法の例があります。
アクティビティでは、JSInterfaceを呼び出します
class Xyz extends Activity implements OnInitListener () {
...
engine.addJavascriptInterface(new DemoJavaScriptInterface(), "demo");
}
final class DemoJavaScriptInterface {
DemoJavaScriptInterface() {
}
public void clickOnAndroid(final String num) {
runOnUiThread(new Runnable() {
public void run() {
if (isrunning) {
_tts.speak(num,TextToSpeech.QUEUE_FLUSH, null);
}
}
});
}