如何分辨何时关闭Android



我该如何确定何时关闭Android?

我可以将功能放入已经作为root运行的C 守护程序中,也可以将功能放入无特点的Java应用程序中。

我可以区分关闭与重新启动吗?(我只关心关闭,重新启动时不得获得假阳性。(

带有广播接收器:

@Override public void onReceive(Context context, Intent intent) {
    if (ACTION_SHUTDOWN.equals(intent.getAction()) || QUICKBOOT_POWEROFF.equals(intent.getAction())) {
        // Do something..
    }
}

将意图过滤器应用于您的清单,称为广播接收器,以收听两个动作:

<action android:name="android.intent.action.ACTION_SHUTDOWN"/>
<action android:name="android.intent.action.QUICKBOOT_POWEROFF"/>

在initrc中触发您的C服务:

  1. 通过属性触发:

    在属性上:sys.shutdown.requested =*
    停止CNSS-DAEMON

  2. 通过关闭关键

  3. 触发

shutdown <shutdown_behavior> 设置服务过程的关闭行为。当未指定此时, 通过使用Sigterm和Sigkill,该服务在关闭过程中被杀死。 与"关键"的关闭_BEHAVIOR的服务不会在关闭期间被杀死 直到关闭时间为止。关闭时间时,甚至标记为 "关闭关键"将被杀死。当服务标记为"关闭关键"时 关闭开始时没有运行,它将开始启动。

最新更新