问题/需求
如何通过在Android中滑动来杀死应用程序时调用Web服务(HTTP请求)?
当我通过从当前最近的应用程序列表中轻扫来杀死应用程序时,我想调用Web服务(或AsyncTask
)。
我用过什么?
我试图在销毁活动时调用AsyncTask
。
AsyncTask
包含WebApi请求(使用DefaultHttpClient
)。
这样的代码......
@Override
protected void onDestroy() {
String url = "<webapi-url here>";
new GetResponse().execute(url);
super.onDestroy();
}
我没有使用任何后台服务。
仅使用活动,不包含任何片段。
如果有任何解决方案,请在此分享。
答案 0 :(得分:4)
您可以编写一个Android服务组件,该组件覆盖一个名为onTaskRemoved()的方法,只要通过从最近一次滑动删除应用程序,就会触发该方法。所以你可以尝试这个解决方案,看它满足你的要求。
答案 1 :(得分:0)
不,没有可靠的方法可以知道您的应用程序是否被其他进程杀死了。&#34; kill&#34;应用程序将尽快终止它,而不让它运行任何代码。
如果您需要更多内容,请参阅Action on application killed in android
答案 2 :(得分:0)
您有类似的帖子,下次请稍微搜索一下,但您可以看到这些帖子:AsyncTask will always run even if app is destroyed?或Async task stopped when App terminates (onDestroyed is called)。
总之,当应用程序被销毁时,AsyncTask会起作用,但如果您尝试修改UI,则应用程序可能会崩溃。告诉我,如果我帮助你,那么好的编程!