问题
Android ACTION_SHUTDOWN intent not working when my app is closed. It works well when app is in foreground or background. How can achieve the same performance when app is closed?
回答1:
Check the following in your manifest file
<uses-permission android:name="android.permission.DEVICE_POWER" />
.....
<receiver android:name=".ShutdownReceiver">
<intent-filter>
<action android:name="android.intent.action.ACTION_SHUTDOWN" />
</intent-filter>
</receiver>
check here: Android ACTION_SHUTDOWN Broadcast not working
回答2:
According to official doc.
Broadcast Action: Device is shutting down. This is broadcast when the device is being shut down (completely turned off, not sleeping). Once the broadcast is complete, the final shutdown will proceed and all unsaved data lost. Apps will not normally need to handle this, since the foreground activity will be paused as well.
This is a protected intent that can only be sent by the system.
May include the following extras:
EXTRA_SHUTDOWN_USERSPACE_ONLY
a boolean that is set to true if this shutdown is only for userspace processes. If not set, assumed to be false.
Constant Value: "android.intent.action.ACTION_SHUTDOWN"
来源:https://stackoverflow.com/questions/34102139/how-to-make-action-shutdown-intent-work-when-app-is-closed-in-android