Android进程已终止-CookieManager实例是否已终止?
Android进程已终止-CookieManager实例是否已终止?,android,memory-management,process,android-cookiemanager,Android,Memory Management,Process,Android Cookiemanager,例如:我在我的应用程序中跨越了四个屏幕,Cookie存储在CookieManager中。现在我按下home按钮,android会终止进程。由于进程被终止,android CookieManager实例也被终止(所有存储的cookie都被删除)。 当我恢复到应用程序时,它从我离开的活动开始,但现在不再有cookie Even though the android process is killed,the activity stack is maintained. 需要在持久性存储中维护cook
例如:
我在我的应用程序中跨越了四个屏幕,Cookie存储在CookieManager
中。现在我按下home按钮,android会终止进程。由于进程被终止,android CookieManager实例也被终止(所有存储的cookie都被删除)。
当我恢复到应用程序时,它从我离开的活动开始,但现在不再有cookie
Even though the android process is killed,the activity stack is maintained.
挑战:
webview使用cookieManager存储其cookie。我们需要将cookie与webView cookie(存储在cookie Manager中的cookie)同步
何时删除所有持久化cookie。我们是否有任何特定于android的回调以退出应用程序Possibile Soln:
Android应用程序类的oncreate将在新进程启动时调用
创建。在该时间点,我们可以从开始启动应用程序
有没有更好的解决办法SharedReferences
。或者,如果cookie的总大小很小,并且对您的应用程序有逻辑意义,那么让它们成为通过onSaveInstanceState()
传递给您的活动和片段的捆绑包的一部分
我的应用程序中有四个屏幕,cookie存储在cookie Manager中
我将假设这个“Cookie管理器”是一个静态数据成员
现在我按下home按钮。现在进程被终止。然后,存储的Cookies也将被删除
当进程终止时,“Cookie管理器”将与内存中的所有其他对象一起消失
如果是这样,我们如何在应用程序中保持一致性。进程被终止后,曾经存储的Cookies被删除,但应用程序正在从我们离开的活动中恢复
将cookie保存在持久存储中,例如文件、数据库或SharedReferences
。或者,如果cookie的总大小很小,并且对你的应用程序来说是合乎逻辑的,那么让它们成为通过你的活动和片段的onSaveInstanceState()
传递给你的捆绑包的一部分。CookieManager大概是@ChrisStratton:好的观点。我不记得CookieManager
是否仍然存在非会话cookie。OP需要重新加载WebView
中的内容,因为旧的WebView
已随旧流程一起消失,因此OP可能需要将用户引导到建立cookie的“前门”。这最好是通过
标志来处理,还是仅仅在应用程序中处理,这可能取决于应用程序本身。CookieManager大概是@ChrisStratton:好的观点。我不记得CookieManager
是否仍然存在非会话cookie。OP需要重新加载WebView
中的内容,因为旧的WebView
已随旧流程一起消失,因此OP可能需要将用户引导到建立cookie的“前门”。这最好是通过
标志处理,还是仅在应用程序内处理,这可能取决于应用程序本身。按home按钮通常不会终止进程!通常,当我们按下home按钮时,android不会终止进程。但是当android需要终止进程时,与前台进程相比,android对后台进程的优先级较低。这就是我的意思。按下home按钮通常不会终止进程!通常,当我们按下home按钮时,android不会终止进程。但是当android需要终止进程时,与前台进程相比,android对后台进程的优先级较低。这就是我的意思。
Possible solutions: (Considering Html(WebView) + android is used in app)