如果 phone 关闭,android 应用程序是否工作

Does a android App work if phone is switch off

是否可以在 phone 关闭时启动 android 应用程序,例如闹钟。

不,如果 phone 关闭,它什么也做不了。

关于 Android device's alarms not triggering when device is turned off 的错误已在大约 5 年前提交。 它的状态然后更改为 "enhancement request"

当您深入该线程时,您可以看到它是 "declined" 。所以正式 Android 不支持它,但是一些供应商已经在他们的供应商特定 ROM 中实现了这个功能。

不,当 phone 关闭时无法启动任何 android 应用程序!!

当设备在 Android 中默认关闭时,警报不起作用,因为它应该从特定于供应商的平台堆栈的较低层得到支持。

有些供应商选择实现此功能,有些则没有。

参考this link了解更多详情。

回到问题上来,是的,如果您可以访问平台堆栈的较低层(固件)并且底层硬件支持它,那么可以将设备从关机状态唤醒,简而言之,如果您为设备供应商工作。

对于普通的第 3 方应用程序开发人员来说,现在还不可能。 如果 android 与供应商一起决定为该功能提供支持,将来有可能。

不,当设备关闭时无法运行您的代码。

但是,是的,您可以实现警报之类的功能(因为您在询问 "how alarm is work?? ")。

步骤 - 1 : 您可以使用 AlarmManager class 设置闹钟。

Step - 2 :将触发警报的时间值存储在SharedPreferences

步骤 - 3(可选): 当 android 设备时,您可能希望使用 ACTION_SHUTDOWN 或 QUICKBOOT_POWEROFF 的事件存储一些数据关掉,link1.

步骤 - 4 : 您还可以在 RECEIVE_BOOT_COMPLETED(link2) 的帮助下在 andoid 中获取设备启动事件,并且一次您可以使用以下命令重置您的 AlarmManager 设备当前时间与您存储在 SharedPreferences 中的时间的差异。

@Anand JainSorry .Android Does not Support This.

报警管理器工作流程

警报响起时,系统会广播已为其注册的 Intent,如果目标应用程序尚未启动,则自动启动 运行宁.

已注册的闹钟在设备处于睡眠状态时会保留(如果闹钟在此期间关闭,则可以选择唤醒设备),但如果关闭并重新启动,则会被清除。

Courtesy

AlarmManager 可以访问 system alarm.services.getSystemService(Context.ALARM_SERVICE)。 如果目标应用程序不是 运行ning,此意图将启动目标应用程序。当您希望您的应用程序代码在特定时间为 运行 时,建议使用 AlarmManager,即使您的应用程序当前不是 运行ning.

AlarmManager when the phone is turned off - ANDROID

https://code.google.com/p/android/issues/detail?id=1942

技术上 Android 基于修改后的 Linux 内核,Android 中的所有进程 运行 都是常规 Linux 进程。因此,当内核出现故障时,所有进程也会关闭。

Alarm Manager 是一个系统服务,它 运行 与其他系统服务一起通过其 Dalvik VM 实例位于单个 Linux 进程(系统服务器)内。正如我已经说过的,System Server 和其他进程一样也是一个 Linux 进程,并且会在整个内核停止后关闭 运行。

基本上,所有 Android 系统服务(例如通知管理器、程序包管理器、摄像头...)都在 运行 独立系统服务器中过程。 (但是,在 Android 的较新版本中,其中一些被分割成多个进程)。并且这个进程不再是运行每当内核停止时。

不,如果 phone 关闭,它什么也做不了。如果它处于屏幕关闭且未使用的睡眠模式,则闹钟仍将像其他类型的通知一样起作用。我从来没有专门在 Galaxy S 上尝试过这个,但我相当有信心这是一个普遍的规则。