微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

完成先前的活动后,Android WebView变得无响应?

如何解决完成先前的活动后,Android WebView变得无响应?

我遇到了一个奇怪的问题-当我完成使用WebView BUT 启动活动的活动时,WebView变得无响应,它不会在第一次启动时发生,而只会在连续的启动中发生而且它也发生在Android 6和7上,较新的Android版本似乎可以轻松应对。 复制此内容的完整项目可以在here

中找到

我有两个活动启动器

class LauncherActivity : AppCompatActivity() {
    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)

        startActivity(Intent(this,MainActivity::class.java))
        finish()
    }
}

和带有WebView的MainActivity

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_main)

        val webView = findViewById<WebView>(R.id.oauthWebView)
        webView.loadUrl("https://semantic-ui.com/examples/login.html")
    }
}

当我第一次启动该应用程序时,一切似乎都还可以,但是第二次打开时, WebView变得无响应,键盘没有显示,并且发生在Launcher onDestroy之后 如果我没有在LauncherActivity中调用finish,一切都很好。 看来LauncherActivity的完成对WebView的加载或其他正在发生的其他过程有一定的影响。 这很奇怪,Logcat也不是很有帮助。 也许你们中的任何人都可以提供一些提示,这可能是这种行为的原因吗?

旁注: 我不是在寻找如何更好地构建导航的答案,我知道可以用不同的方式完成-我很好奇WebView为何如此怪异。

解决方法

你可以试试吗?

 val webView = findViewById<WebView>(R.id.oauthWebView)
 webView.getSettings().setJavaScriptEnabled(true);      
 webView.loadUrl("https://semantic-ui.com/examples/login.html")
  

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。