当前位置: 首页 > 知识库问答 >
问题:

当进程被杀死时,AlarmManager中的警报将被清除

甄越
2023-03-14

我是Android系统的新手,所以请原谅我。我的主要活动在警报管理器中创建警报,假设在特定的时间内发射,我的主要活动还创建广播接收器,假设接收警报发射的意图,一切都正常工作,直到任务管理器杀死我的应用程序。我已经检查了AlarmManager中的PendingIntent列表,并验证我的警报正在从警报管理器中删除,我试图添加服务并从服务中注册警报,我红了,可能是因为我的广播接收器的IntentFilter是在代码中定义的,而不是在manifest中定义的,它在应用程序进程被杀死后被杀死,我在这个问题上被困了两周:-(,很困惑,我的设计是错误的?

  1. 即使应用程序被关闭或手机重新启动,警报也会非常可靠。
  2. 广播接收机也是如此。

提前感谢,

共有1个答案

李泓
2023-03-14

如果用户任务终止或强制停止您的应用程序,您的警报将被取消注册。而且,在Android3.1+上,在用户手动启动你的某个活动之前,你的应用程序不会再次运行。

除了尽最大努力编写一个用户不需要或不希望强制停止的高质量应用程序之外,您对此无能为力。

 类似资料:
  • 问题内容: 我正在用C / C ++ 创建子进程。 当父进程结束(或由于某种原因被杀死)时,我也希望所有子进程也被杀死。 这是系统自动完成的吗?还是我必须自己做? 谢谢。 问题答案: 否。如果父进程被杀死,则子进程将成为init进程的子进程(该进程的进程ID为1,并由内核作为第一个用户进程启动)。 初始化过程会定期检查新的子代,然后等待它们(从而释放由其返回值分配的资源)。

  • 问题内容: 我正在使用child_process.spawn()从在Ubuntu上运行的Node.JS应用程序启动脚本。据我所知,标准的分叉或生成的* nix进程通常不会在父进程死后死亡,但是当从Node.JS生成进程时,它们似乎在我的应用程序崩溃或被ctrl-c等终止时被杀死。 。 为什么会这样,并且有解决办法?我似乎在child_process API中找不到任何明显的选项。 我的应用程序启动

  • 我有一个要求,执行一个任务,在正好每5分钟。我考虑了多个选项,并尝试使用类来触发任务来实现这一点。但是,当应用程序被杀死时,我无法触发警报。 当应用程序打开或在后台运行时,警报似乎工作得完美无缺,但一旦我退出应用程序,它似乎完全停止了。 我的实现是使用函数,并自己处理重复这个过程。最初的警报在5秒后触发,然后在此之后每5分钟触发一次。 MyService.kt:

  • 问题内容: 我从python脚本生成了5个不同的进程,如下所示: 我的问题是,当父进程(主脚本)以某种方式被杀死时,子进程继续运行。 当父进程被杀死时,有没有办法杀死这样生成的子进程? 编辑:我正在尝试: 但这似乎不起作用 问题答案: 我自己也遇到了同样的问题,我有以下解决方案: 打电话之前,您可以设置。然后如此处所述python.org multiprocessing 进程退出时,它将尝试终止其

  • 我们试图将我们的一个node js应用程序(AngularJS/NodeJS tech stack)部署到生产环境中。随机地,当节点进程被终止时,一些ec2实例就停止了。但是没有记录应用程序/系统级别的错误消息。我们无法在本地/开发/it环境中重现此问题。有人面临过类似的事情吗?非常感谢任何帮助。谢谢!

  • 我试图执行: 致命错误:中允许的内存大小94371840字节已用尽(尝试分配71字节)phar:///home/xxxxxxx/bin/composer.phar/src/Composer/DependencyResolver/RuleSetGenerator.php 在线123 xxxxxxx是用户。 然后我试着执行: 和: 然后我收到了这个: 哎呀!您的一个进程(php,pid 14331)因