Android WebView работает только для API 28 - PullRequest
0 голосов
/ 06 ноября 2019

Я локально сохранил веб-сайт в своей папке assets (т.е. файлы HTML, CSS и Javascript). Используя WebView, я могу отображать веб-сайт на любом телефоне, который я пробовал с Android 9, эмулированным или аппаратным. Но когда API ниже 28, WebView остается пустым (очевидно, потому что Javascript не загружается; веб-сайту нужен Javascript для отображения чего-либо). Это код, который я использую:

webView = (WebView) findViewById(R.id.webview);
webView.loadUrl("file:///android_asset/website.html");

WebSettings webSettings = webView.getSettings();
webSettings.setJavaScriptEnabled(true);
webSettings.setDomStorageEnabled(true);
webSettings.setLoadWithOverviewMode(true);
webSettings.setUseWideViewPort(true);
webSettings.setBuiltInZoomControls(true);
webSettings.setDisplayZoomControls(false);
webSettings.setSupportZoom(true);
webSettings.setDefaultTextEncodingName("utf-8");

webView.addJavascriptInterface(jsInterface, "JSInterface");

В чем может быть ошибка?

1 Ответ

0 голосов
/ 07 ноября 2019

Я решил проблему, исправив ошибку в файле JavaScript;Я где-то использовал «append» вместо «appendChild», что, по-видимому, не было проблемой для API 28+, но в противном случае привело к ошибке.

...