簡體   English   中英

Android Webview Javascript無法正常工作

[英]Android Webview Javascript won't work

我有在列表視圖中顯示的推文列表。 我在列表視圖上設置了一個偵聽器,該偵聽器應將用戶帶到特定的tweet。

我列表上的偵聽器如下:

 listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
        @Override
        public void onItemClick(AdapterView<?> adapterView, View view, int i, long l) {
            Intent intent = new Intent(TweetActivity.this, WebActivity.class);

            intent.putExtra("url", String.valueOf(twitterBaseURL+tweetResult.get(i).getId()));
            startActivity(intent);
        }
    });

在我的網絡活動課程中,我正在做以下事情:

String url = getIntent().getExtras().getString("url");
WebView webView = (WebView) findViewById(R.id.webView);
webView.getSettings().setJavaScriptEnabled(true);
webView.getSettings().setJavaScriptCanOpenWindowsAutomatically(true);
webView.setWebChromeClient(new WebChromeClient());
webView.setWebViewClient(new WebViewClient());
webView.getSettings().setDomStorageEnabled(true);
webView.loadUrl(url);

在網絡視圖中,它不會像在移動設備上的谷歌瀏覽器中那樣加載頁面。 我認為JavaScript無法正確加載。

更新1:

我在具有API 21的android設備上對此進行了測試。在android studio中,我有一個具有API 23的虛擬設備。在API 23中,這可以正確加載所有內容。 我使用API​​ 21創建了另一個虛擬設備,並進行了仔細檢查,以確保問題出在API級別上。 此代碼在API 23中有效,可以在網絡視圖內正確加載網址,但在API 21中不起作用嗎?

啟用JavaScript

默認情況下, WebView中禁用了JavaScript 您可以通過WebView附帶的WebSettings啟用它。 您可以使用getSettings()檢索WebSettings ,然后使用setJavaScriptEnabled()啟用JavaScript。

例如:

WebView myWebView = (WebView) findViewById(R.id.webview);
WebSettings webSettings = myWebView.getSettings();
webSettings.setJavaScriptEnabled(true);
myWebView.loadUrl("file:///android_assets/your_page.html");

看一下這個 ,盡管討論的問題是本機的。

提到的最后一點是關於嘗試在真實的Android設備上運行的信息。 實際上,有時Android仿真器無法按預期運行。

所以我建議先使用API​​ 21在真實的android設備上測試您的代碼

暫無
暫無

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

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