【发布时间】:2016-04-13 18:11:16
【问题描述】:
我正在努力使用 crosswalk 和 cordova 插件 javacode 让它们共享相同的 cookie。
在 javascript 中创建一个身份验证 cookie,并在几个 XMLHttpRequests 期间更新到我的 webservice。
在 Java 中,我有一个 IntentService,onHandleIntent 会被调用,例如在发生位置更新时。
在我的onHandleIntent 内部,我想使用相同的cookie 调用与上述javascript 部分相同的webservice。
为了检索我调用 new XWalkCookieManager().getCookie(url) 的 cookie,并使用它在 Java 中进行 HTTP-Call,包括该 cookie。
当应用程序完全关闭时(通过 TaskManager),我的 onHandleIntent 仍然被调用。但我不能打电话给getCookie(url),因为人行横道没有运行。 getCookie(url) 崩溃无法捕获 (ndk)。
我已经尝试在我的MainActivitys onStop 中缓存当前的 cookie,它可以在某些设备上运行。但在其他设备上,应用程序经常在没有适当停止行为的情况下关闭。所以这是非常脆弱的。
所以我的问题是:有没有办法在应用程序关闭时获取人行横道 cookie,或者拦截 javascript 完成的所有请求并缓存 cookie 以便在应用程序时准备好正确的 cookie关门了吗?
【问题讨论】:
-
同样糟糕的问题。你找到解决办法了吗?
标签: android web-services cordova cookies intentservice