Cordova:重新启动应用程序并清除浏览器历史记录

时间:2018-08-15 11:50:31

标签: android ios cordova restart

我们正在为Cordova应用程序添加一项功能,以捕获未处理的异常并重新启动该应用程序。在这种情况下,我们希望清除浏览器的历史记录,以使用户无法在Android设备上回弹到崩溃的屏幕。

不可能以编程方式清除浏览器历史记录,但我希望有一个Cordova插件可以重新实例化整个应用程序(即删除当前的Webview并创建一个新的webview)。我却找不到类似的东西。

有没有一种好的方法可以同时在iOS和Android上使用?

2 个答案:

答案 0 :(得分:2)

在Android中,每个WebView实例都可以做到:

webView.clearCache(true);
webView.clearHistory();
webView.clearFormData();

对于IOS,请在此处阅读:Clearing UIWebview cache

答案 1 :(得分:1)

我建议使用cordova-plugin-cache-clear,以便处理更多Android上的Chrome。但是Activity重新启动本身无法通过某些Cordova插件来完成(对于Exception,甚至无法通过Activity.recreate()来完成),但这需要一个辅助工具Service ,它会收到通知(当然,必须处理这些异常,但未处理的异常仍然会崩溃),然后相应地处理情况。找出可能的崩溃原因可能更有意义-首先不要浪费时间为未正确伪造的代码创建可疑的解决方法。此外,如果这是JavaScript的bug,那么可能根本无法解决这些问题,而只能解决这些问题。