繁体   English   中英

Android WebView Javascript通信错误

[英]Android WebView Javascript communication error

我的WebView应用程序出现问题。 我将开始通过Javascript在WebView和App之间进行通信。 错误:

E / Web控制台:未捕获的错误:NPObject上的调用方法出错。

JavascriptInterfaces:

public class MainActivity extends Activity {
    public class WebAppInterface {
        Context mContext;
        WebAppInterface(Context c) {
            mContext = c;
        }
        @JavascriptInterface
        public void launch(String name) {
            Intent LaunchIntent = getPackageManager().getLaunchIntentForPackage(name);
            startActivity(LaunchIntent);
        }
        @JavascriptInterface
        public void test() {
            WebView myWebView = (WebView) findViewById(R.id.webview);
            myWebView.loadUrl("javascript: alert('test');");
        }
    }

WebView设置:

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        WebView myWebView = (WebView) findViewById(R.id.webview);
        WebSettings webSettings = myWebView.getSettings();
        myWebView.getSettings().setJavaScriptEnabled(true);
        myWebView.setInitialScale(100);
        myWebView.setWebChromeClient(new WebChromeClient());
        myWebView.setWebViewClient(new WebViewClient());
        myWebView.addJavascriptInterface(new WebAppInterface(this), "Android");
        myWebView.getSettings().setRenderPriority(WebSettings.RenderPriority.HIGH);
        myWebView.getSettings().setCacheMode(WebSettings.LOAD_NO_CACHE);
        myWebView.requestFocus(View.FOCUS_DOWN);
        myWebView.loadUrl("file:///android_asset/index.html");
    }

谁能帮忙?

你有没有尝试在UI线程内运行WebAppInterface.launch()和WebAppInterface.test()代码: 链接

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM