关于AlarmManager的生命周期

bbjyczy 2013-01-22 03:34:52
首先诅咒方兴兵早日去死,连“周期“都不能GOOGLE,其祖坟早日被人挖,其后代均死于非命。
请教大神
在ACTIVITY里声明一个AlarmManager。当这个进程被强制停止后,AlarmManager的Repeating还在工作吗?

我知道broadCast其进程被强制停止后,broadCast仍然在工作。

...全文
361 8 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
zhujunhua2012 2013-12-19
  • 打赏
  • 举报
回复
在 设置->应用信息->强行停止,这个时候, AlarmManager是会被kill掉的啊。。。
vicluo 2013-01-28
  • 打赏
  • 举报
回复
毫无疑问可以继续工作。 ams(alarmamanagerservice,下同)是运行在system_server进程,当你注册一个alarm到ams中去的时候,只要你没有主动的取消他并且时间也没到,那么其肯定会在制定的时间内回调你的pendingintent。 因为你的所有的intent的内容都是保存在activitymanagerservice的mIntentSenderRecords的一个hashmap中,并不会因为你的进程的结束而销毁,只要你注册到ams中,同时没有主动去cancel,那么到时见就会执行你的pendingintent 可以看下这篇文章 http://blog.csdn.net/vicluo/article/details/8484939
oyq_yangy 2013-01-22
  • 打赏
  • 举报
回复
引用 2 楼 ningzhiyu 的回复:
能正常工作的 已经添加到 alarmmanagerservice里面的,alarm的运行跟当前activity是否活着没有多大关系,主要是alarmmanagerservice和添加时的intent吧
顶,能工作,只要system_server活着
ningzhiyu 2013-01-22
  • 打赏
  • 举报
回复
能正常工作的 已经添加到 alarmmanagerservice里面的,alarm的运行跟当前activity是否活着没有多大关系,主要是alarmmanagerservice和添加时的intent吧
qinjuning 2013-01-22
  • 打赏
  • 举报
回复
为何不加Log看看呢 ? 如果Activity结束掉了,就直接cancel掉该AlarmManager吧。 推测的话,应该可以工作。
oyq_yangy 2013-01-22
  • 打赏
  • 举报
回复
http://bbs.csdn.net/topics/370038197 alarmmanagerservice是service运行在system_server进程,alarmmanager是client,运行在你的进程。
bbjyczy 2013-01-22
  • 打赏
  • 举报
回复
假设alarmmanagerservice一旦被声明后,就脱离进程存在。那么用alarmmanagerservice调用一个SERVICE应该需要设置FLAG成为类似NEW_TASK这样的。可是具体怎么用代码实现,我就不知道了。普通的ACTIVITY调用SERVICE,要设置FLAG为NEW_TASK,我知道。
bbjyczy 2013-01-22
  • 打赏
  • 举报
回复
谢谢楼上各位的指点。貌似网络上对 alarmmanagerservice有各种解释,有说进程结束 alarmmanagerservice失去生命,也有说进程结束 alarmmanagerservice不会结束生命。 本人在activity里声明了一个 alarmmanagerservice去repeat一个SERVICE.进程结束后,service是没有反映的。当然也许是service被结束了,所以service没有反映。我在验证一下

80,471

社区成员

发帖
与我相关
我的任务
社区描述
移动平台 Android
androidandroid-studioandroidx 技术论坛(原bbs)
社区管理员
  • Android
  • yechaoa
  • 失落夏天
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧