如何实现安卓闹钟应用的"wake up screen and go to Activity"行为?



如果我在默认的Android时钟应用程序中设置了一个计时器,那么当时间用完时,它会有以下行为:

  1. 如果手机解锁,会出现一个弹出窗口,允许您停止闹钟或导航回应用程序
  2. 如果手机被锁定(包括屏幕关闭(,屏幕将打开,您将进入一个特殊的"活动"以停止报警

在我自己的应用程序中重现这两种行为的最佳方式是什么?我已经复制粘贴了各种涉及AlarmManager的魔法咒语,但什么都不起作用。在谷歌上搜索";将活动带到前面";或";唤醒电话";似乎正是我所需要的。

这是不可能的,而且是设计出来的。有两个独立的问题,它们都不可能实现。

  1. 在所有最新的API版本中,Google逐渐禁用了在没有用户交互的情况下启动活动的功能。他们还禁用了";跳板;行为,其中后台服务和/或接收器尝试从后台开始活动。你应该使用通知让用户知道你想做什么,当他们与通知交互时,你的活动就可以启动了
  2. 绝对没有任何应用程序,除非你有一个自定义ROM或根手机,可以绕过锁屏。这是一个安全问题,其想法与之前的情况相同——你需要通知用户,如果他们与通知交互,就会提示他们解锁手机,你的活动就会启动

最新更新