Even though the android process is killed,the activity stack is maintained.
For Example:
我在我的应用程序中跨越了四个屏幕,并且 cookie 存储在CookieManager
. 现在我按下主页按钮,android 杀死了进程。由于进程被杀死,android CookieManager 实例也被杀死(所有存储的 cookie 都被删除)。当我恢复到应用程序时,它从我离开的活动开始,但现在不再有 cookie。
Possible solutions: (Considering Html(WebView) + android is used in app)
需要在持久化存储中维护cookies。(不依赖Android CookieManager)。
Challenges:
webview 使用 cookieManager 来存储它的 cookie。我们需要将我们的 cookie 与 webView cookie(存储在 cookie 管理器中的 cookie)同步。
何时删除所有持久化的 cookie。我们是否有任何针对应用程序退出的 android 特定回调?
如果进程被终止,则从启动(从建立 cookie 的位置)重新启动应用程序。
Possibile Soln:
Android Application 类的 oncreate 会在新进程创建时被调用。那个时间点,我们可以从启动开始启动应用程序。有没有更好的解决方案?
如果我们正在实现一个自定义类来维护 cookie,那么拥有 android CookieManager 有什么意义呢?