Android Webview在最新的android版本中不起作用

时间:2019-08-19 03:50:36

标签: android android-webview android-9.0-pie

我知道这个问题在stackoverflow中问了很多遍,但是他们的解决方案对我来说却行不通。这就是为什么我问这个问题。

现在的问题是,我正在通过android webview开发一个应用程序,现在该应用程序在旧版本的android版本中可以完美运行,但在最新的android版本(即9)中无法正常运行

我尝试了其他解决方案中的许多方法,例如

webView.getSettings().setJavaScriptEnabled(true);
webView.getSettings().setLoadWithOverviewMode(true);
webView.getSettings().setUseWideViewPort(true);

在onCreate方法中添加了此代码,但没有用。

我尝试的另一种方法是添加 @ xml / network-security-config文件,但这也没有用。

这是我的 network-security-config 代码

<?xml version ="1.0" encoding ="utf-8"?>
<network-security-config>
    <domain-config cleartextTrafficPermitted="true">
        <domain>onlineawaz.in</domain>
    </domain-config>
</network-security-config>

public class MainActivity extends AppCompatActivity {
    WebView webView;
    ProgressBar bar;
    @SuppressLint("NewApi")
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        webView = (WebView) findViewById(R.id.webView2);
        webView.getSettings().setJavaScriptEnabled(true);
        webView.getSettings().setLoadWithOverviewMode(true);
        webView.getSettings().setUseWideViewPort(true);
        bar =(ProgressBar) findViewById(R.id.progressBar2);
        webView.loadUrl("http://onlineawaz.in/");
        webView.getSettings().setJavaScriptEnabled(true);
        webView.setWebViewClient(new myWebClient());
    }

    public class myWebClient extends WebViewClient{
        //page event
    }
}

1 个答案:

答案 0 :(得分:1)

请尝试在AndroidManifest.xml标签下的application中添加以下代码

android:usesCleartextTraffic="true"
tools:ignore="UnusedAttribute"

第一行将允许您使用 HTTP URL (在Pie中不建议使用)。第二行用于忽略SDK小于23的警告。