问题描述
|
我的应用程序中有些不寻常的情况,我无法在
onCreate()
中实例化WebView
,而只能在稍后在回调中实例化(甚至不在同一线程上)。
结果,官方文档中的曲奇切刀说明(不带双关语)(在ѭ3中用“ 2”来称呼)在我的情况下并不适用。
这是因为需要在CookieSyncManager::getInstance()
之前调用CookieSyncManager::createInstance()
,但是在Activity.onResume()
之后调用我的回调(其中调用了ѭ5))。
因此,我唯一的选择似乎是在将CookieSyncManager::getInstance()
之前,将CookieSyncManager::createInstance()
移至Activity.onResume()
。
这不是一个很好的解决方案,因为除非我可以检查是否存在CookieSyncManager
实例,否则创建多个CookieSyncManager
实例不是一个好主意...(它将无法正常工作)无论如何)。
因此,我认为也许将CookieSyncManager::createInstance()
移至onCreate()
与官方文档完全一致。唯一的问题是,onCreate()
中尚不存在ѭ0instance的实例。
因此,我的问题是:CookieSyncManager是否需要WebView的有效实例吗?
解决方法
好了,您可以在创建WebView对象之前调用CookieSyncManager,但是那样也不会保存WebView对象的cookie。