2017-06-03 108 views
0

我的应用程序需要服务在后台运行甚至当应用程序被关闭,我刚刚实施START_STICKY防止OS关闭它,但是当我手动关闭应用程序的服务停止运行,我不知道如何让它活着,而无需使用startforeground如何在关闭应用程序时保持服务运行?

它类似于WhatsApp的和电报的istant消息应用程序,所以我的目标是实现一种推送通知系统。

所以主要问题是:当用户手动关闭应用程序时,如何让服务保持活动状态

+1

阅读此答案:https://stackoverflow.com/questions/9740593/android-create-service-that-runs-when-application-stops?rq=1 – Stanojkovic

回答

0

只要按照这种服务生命周期,并根据您的需要做。

Services Life-Cycle

+0

谢谢你的回答,但我不是肯定我应该做的,你可以联系我来解释您刚刚发布,请服务的生命cicle一个文档? – Teddy

+0

只是阅读本文件链接https://developer.android.com/guide/components/services.html –

0

发现后有没有任何真正满意的答案,这在计算器上或其他地方,我决定来研究(目前,2017年)明确的解决办法。

这就是:

https://github.com/JamesSmartCell/PersistentWidgetTask.git

这是一个演示,说明如何实现持续的后台任务没有得到关闭,这也显示了一个非常简单的实现一键小工具也是另一种非常常见的设计,它没有收到很多好的答案。

我看了很多在互联网上的小演示,关键这是极好的Vogella网站在这里:

http://www.vogella.com/tutorials/AndroidTaskScheduling/article.html

细目:

  1. 您需要使用JobScheduler而不是AlarmManager
  2. 您需要创建一个JobService才能接收预定的作业,然后从JobService onStartJob调用您的后台服务
  3. 在你AndroidManifest文件,你需要指定:

    安卓权限=“android.permission.BIND_JOB_SERVICE”

我希望这样可以节省别人谁是仍在寻找答案了不少时间!

相关问题