簡體   English   中英

從android webview觸發JavascriptInterface

[英]triggering JavascriptInterface from a android webview

我按照一條指令從webview中觸發了JavascriptInterface,但在我的情況下它沒有被觸發。

我有一個類QuickTextViewer,其中包括:

    public class QuickTextViewer {
        private WebView webView;
    ...
    ...
        public QuickTextViewer(){
           webView = dialog.findViewById(R.id.mywebview);

           webView.setWebViewClient(new WebViewClient() {
            @Override
            public void onPageFinished(WebView view, String url) {
                 view.loadUrl("javascript:MyApp.resize(document.body.getBoundingClientRect().height)");
                super.onPageFinished(view, url);
            }
        }
@JavascriptInterface
    public void resize(final float height) {
        System.out.print(height);
    }

我還在proguard-rules.pro中添加了以下內容(實際上僅用於測試)

-keepclassmembers class fqcn.of.javascript.interface.for.webview {
   public *;
}

在我的情況下onPageFinished被觸發但是resize()沒有! 有什么建議/幫助嗎?

現在發現了問題。 只需添加:

webView.getSettings().setJavaScriptEnabled(true);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM