簡體   English   中英

從Internet訪問時JavaScript工作正常,但從WebView Android上的文件夾資產訪問頁面時無響應

[英]JavaScript Working When Access From Internet But Not Responding When Access Page From Folder Assets On WebView Android

我嘗試使用android webview訪問此頁面URL: DEMO FACE TRACKER 我使用以下代碼:

protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);


    wv = (WebView) findViewById(R.id.webView);
    wv.setWebChromeClient(new WebChromeClient());
    wv.setWebViewClient(new WebViewClient(){
        @Override
        public void onPageFinished(WebView view, String url) {
            super.onPageFinished(view, url);
        }
    });
    wv.getSettings().setJavaScriptEnabled(true);
    wv.addJavascriptInterface(new WebAppInterface(this), "Android");
    wv.loadUrl("http://auduno.github.io/clmtrackr/clm_image.html");
}

和它的作品!

但是,當我將所有頁面(包括javascript)復制到本地,並從資產文件夾訪問它時,應用返回“無響應”。

這是我用來訪問本地資產的代碼:

protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);


    wv = (WebView) findViewById(R.id.webView);
    wv.setWebChromeClient(new WebChromeClient());
    wv.setWebViewClient(new WebViewClient(){
        @Override
        public void onPageFinished(WebView view, String url) {
            super.onPageFinished(view, url);
        }
    });
    wv.getSettings().setJavaScriptEnabled(true);
    wv.addJavascriptInterface(new WebAppInterface(this), "Android");
    wv.loadUrl("file:///android_asset/index.html");
}

有關信息,媒體以外的所有資產(腳本,css等)已合並為一個頁面,當我從瀏覽器(在計算機上)訪問時,它的工作正常,但在android webview中卻沒有。

在android上是否對此具有特殊權限? 請幫助:)謝謝。

您最有可能遇到路徑問題。 它可能沒有從您認為的位置加載。 嘗試添加以查看

        @Override
        public void onLoadResource(WebView view, String resUrl) {
            super.onLoadResource(view, resUrl);
            Log.d(LOG_TAG,"Loading " + resUrl);
        }

從文件加載時,添加setAllowUniversalAccessFromFileURLs以解決javascript安全問題。

wv.getSettings().setAllowUniversalAccessFromFileURLs(true);

暫無
暫無

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

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