强制页面加载到webview内部,而不是外部浏览器保持较低的API lvl

时间:2018-07-06 04:29:50

标签: android webview kotlin

我正在尝试将所有网址加载到android studio的webView中,而不是外部浏览器中,我通过实现以下代码成功实现了这一点:

 webview.apply{
settings.javaScriptEnabled = true
settings.loadWithOverviewMode = true
settings.useWideViewPort = true
webViewClient = MyClient()
loadUrl("http://url.com")
 }


inner class MyClient : WebViewClient() {
    override fun shouldOverrideUrlLoading(view: WebView?, request: 
           WebResourceRequest?): Boolean {
        view?.loadUrl(request?.url?.toString())
        return true
    }

(感谢手枪法提供上述代码)

但是,“内部类MyClient:...”部分至少需要API级别21,并且我真的很想获得相同的结果而不必将级别从17提升到21,因为我确实需要我的应用程序可以安装在较低版本的Android中。

有办法吗?

预先感谢您的支持

致谢

1 个答案:

答案 0 :(得分:0)

尝试一下

override fun shouldOverrideUrlLoading(view: WebView, url: String): Boolean {
        view.loadUrl(url)
        return true
}

此方法已弃用,但由于您不想更改 minSdkVersion = 21