An error occurred while calling JS in webView.
Class TestJS {
......
Public TestJS (){
}
Public void save (String data ){
WebView. loadUrl ("javascript: alert (" + data + ")");
}
......
}
W/WebView (2088): java. lang. throwable: A WebView method was called on thread 'javabridge '. all WebView methods must be called on the same thread. (Expected Looper (main, tid 1) {b3dbcb18} called on loridge (JavaBridge, tid 120) {b44a1af8}, FYI main loridge is Looper (main, tid 1) {b3dbcb18 })
W/WebView (2088): at android. webkit. WebView. checkThread (WebView. java: 2063)
W/WebView (2088): at android. webkit. WebView. loadUrl (WebView. java: 794)
W/WebView (2088): at com. ue. oa. activity. XFormActivity. alert (XFormActivity. java: 180)
W/WebView (2088): at com. ue. oa. activity. XFormActivity $ FormActions. save (XFormActivity. java: 193)
W/WebView (2088): at com.android.org. chromium. base. SystemMessageHandler. nativeDoRunLoopOnce (Native Method)
W/WebView (2088): at com.android.org. chromium. base. SystemMessageHandler. handleMessage (SystemMessageHandler. java: 27)
W/WebView (2088): at android. OS. Handler. dispatchMessage (Handler. java: 102)
W/WebView (2088): at android. OS. login. loop (login. java: 136)
W/WebView (2088): at android. OS. HandlerThread. run (HandlerThread. java: 61)
Solution
Modify the save method:
Public void save (String data ){
WebView. post (new Runnable (){
@ Override
Public void run (){
WebView. loadUrl ("javascript: alert (" + data + ")");
}
});
}
[Reference]
[1] android webview. loadUrl won't load another webpage: http://stackoverflow.com/questions/21955593/android-webview-loadurl-wont-load-another-webpage