有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java WebView未在安卓 4.2(17)中加载instagram登录网站

我正在为Android开发一个应用程序,用户可以通过我的应用程序中的内部WebView登录到他/她的帐户。我正在使用https://www.instagram.com/accounts/login/url来实现这个目的。问题在于,在Android 4.2(api 17)中,WebView仍处于加载状态,不加载url。我检查了webViewClient的回调,它显示onPageFinished被调用,但由于某些原因,它没有正确显示网站

这是我的活动代码:

class LoginBrowserActivity : BaseActivity<ActivityAuthenticationWebBrowserBinding>() {

    @SuppressLint("SetJavaScriptEnabled")
    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)

        val loginUrl: String = "https://www.instagram.com/accounts/login/"

        bindingView.webView.clearCache(true)
        if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
            CookieManager.getInstance().removeAllCookies(null)
            CookieManager.getInstance().flush()
        } else {
            CookieManager.getInstance().removeAllCookie()
        }
        bindingView.webView.settings.javaScriptEnabled = true;
        bindingView.webView.settings.domStorageEnabled = true;
        bindingView.webView.settings.javaScriptCanOpenWindowsAutomatically = true;
        bindingView.webView.webViewClient = object : WebViewClient() {

            override fun onReceivedSslError(view: WebView?, handler: SslErrorHandler?, error: SslError?) {
                handler?.proceed()
            }

            override fun onPageFinished(view: WebView?, url: String?) {
                super.onPageFinished(view, url)
            }

            override fun onReceivedError(view: WebView?, request: WebResourceRequest?, error: WebResourceError?) {
                super.onReceivedError(view, request, error)
            }

        }
        bindingView.webView.loadUrl(loginUrl)
    }

}

enter image description here


共 (0) 个答案