Android WebView 不适用于默认浏览器,但适用于 Chrome

Android WebView doesn't work with default browser, but works with Chrome

本文关键字:适用于 Chrome 默认浏览器 不适用 Android WebView      更新时间:2023-09-26

我的移动网址在Chrome浏览器上运行良好,但在默认浏览器和WebView上则不行。但是有些手机可以使用默认浏览器。我的网站包含JavaScript;我启用了 JavaScript。

我的网站:

http://192.99.56.153:35555/htmlchat/123flashchat.html?init_host=192.99.56.153&init_host_s=192.99.56.153&init_host_h=192.99.56.153

我的网络视图:

webview = (WebView) findViewById(R.id.webView1);
webview.getSettings().setJavaScriptEnabled(true);
webview.setWebViewClient(new WebviewUrl());
webview.loadUrl(url);

是否有任何修复可能?

您是否在应用清单中启用了互联网权限?

<uses-permission android:name="android.permission.INTERNET" />添加到清单标记内的AndroidMainfest.xml文件中。

此外,请确保您的视图设置正确(高度和宽度等)。

否则,您将需要发布相关的日志输出。

只需添加此行,然后重试。

   webview.setWebViewClient(new myWebClient());
   webview.setWebChromeClient(new WebChromeClient()); 
Android

浏览器以及 Android WebView 从操作系统版本更改为操作系统版本。最重要的是,不同的供应商包含不同的HTML渲染引擎(例如,三星浏览器自Android v4.0以来基于Chromium)。

如果您使用的是Android v4.4(KitKat)或更高版本,我建议您启用调试界面,以便您可以通过PC上的Chrome Dev Tools调试HTML/JavaScript:

myWebView = (WebView) findViewById(R.id.webview);
WebSettings webSettings = myWebView.getSettings();
// Enable some handy features. What are the requirements of your HTML/JavaScript code?
webSettings.setJavaScriptEnabled(true);
webSettings.setAllowContentAccess(true);
webSettings.setAppCacheEnabled(true);
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) {
    WebView.setWebContentsDebuggingEnabled(true);
}
myWebView.loadUrl("http://192.99.56.153:35555/htmlchat/123flashchat.html?init_host=192.99.56.153&init_host_s=192.99.56.153&init_host_h=192.99.56.153");

包含 Web 视图的应用程序需要具有互联网权限:

<uses-permission android:name="android.permission.INTERNET" />