Reputation: 1304
Error is
java.lang.Throwable: EventHub.removeMessages(int what = 107) is not supported before the WebViewCore is set up
.
I am calling a
webview.loadUrl("javascript:myJavaMethod(" + itemArr + "," + telcoID + ");");
on the
webview.setWebViewClient(new WebViewClient() {
@Override
public void onPageFinished(WebView view, String url) {
this is a webview playing a flash video player, all is good on 2.2, 2.3.3 etc, tried it on ice cream sandwich and no visible error (other than its just a black screen nor video playing)
Any thoughts.
Upvotes: 11
Views: 6776
Reputation: 263
I know this topic is old, but I used it to find my solution to that 107 error. My fix was to replace the deprecated:
webview.getSettings().setPluginsEnabled (true);
to
webview.getSettings().setPluginState(PluginState.ON);
Now it plays the video and error free.
Upvotes: 2
Reputation: 2252
I was getting the same error in my application, however i think my issue is a developer error. In order to explain how i got this issue, ill describe what i did. I'm creating an Android application which is loading and running a GWT compiled JavaScript application into a WebView. I looked around for many different things until i realized that my problem was in my own WebViewClient class. I had my class implemented as follows:
private static class HelloWebViewClient extends WebViewClient
{
@Override
public boolean shouldOverrideUrlLoading( WebView view, String url )
{
view.loadUrl( url );
return true;
}
}
This quickly caused the above exception to manifest. I changed the above line to being the following:
private static class HelloWebViewClient extends WebViewClient
{
@Override
public boolean shouldOverrideUrlLoading( WebView view, String url )
{
return false;
}
}
And POOF! no more error. I can't say I can actually explain what I did wrong. But im sure if i dug a bit more, i'd find the problem. But for now, I'm happy that it works. I hope this is useful to someone :)
Upvotes: 0
Reputation: 187
I had the same problem, and I added android:hardwareAccelerated="true" to the actual Activity that the Webview was contained in the Manifest. Hopefully that works for you too. This looks like there is a bug logged: http://code.google.com/p/android/issues/detail?id=21177
Upvotes: 0
Reputation: 51
I had the same problem until I added the webview to the view dinamically.
Upvotes: 1
Reputation: 13101
You can call webview.loadUrl("javascript:myJavaMethod(" + itemArr + "," + telcoID + ");"); in a background thread. this can be a solution.
it will warn: A webview method was called on thread xxxx All webview methods must be called on the UI thread.
But it works.
Upvotes: 0