Android 系统崩溃或重新启动时是否有任何事件/意图让我知道?
我已经实现了一个功能,可以在需要时更新数据库 (例如,将数据库的一列值更改为B) 如果系统崩溃或重新启动或出现故障 有什么事情我可以知道,然后我可以处理恢复数据库回来 (例如,将数据库的一个列值恢复回A)Android 系统崩溃或重新启动时是否有任何事件/意图让我知道?,android,database,crash,reboot,Android,Database,Crash,Reboot,我已经实现了一个功能,可以在需要时更新数据库 (例如,将数据库的一列值更改为B) 如果系统崩溃或重新启动或出现故障 有什么事情我可以知道,然后我可以处理恢复数据库回来 (例如,将数据库的一个列值恢复回A) 感谢您的帮助。当设备完成时,它会广播一个意图,通过注册此广播,您可以获得呼叫: <uses-permission android:name=”android.permission.RECEIVE_BOOT_COMPLETED” /> public class Y
感谢您的帮助。当设备完成时,它会广播一个意图,通过注册此广播,您可以获得呼叫:
<uses-permission android:name=”android.permission.RECEIVE_BOOT_COMPLETED” />
public class YourReceiverName extends BroadcastReceiver{
@Override
public void onReceive(final Context context, Intent intent) {
if(intent.getAction().equals(Intent.ACTION_BOOT_COMPLETED)){
//Do your task here....
}
}
}
添加对清单文件的权限:
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
<receiver android:name="Your receiver name">
<intent-filter>
<action android:name="android.intent.action.BOOT_COMPLETED" />
</intent-filter>
</receiver>
并在清单文件中注册此收件人:
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
<receiver android:name="Your receiver name">
<intent-filter>
<action android:name="android.intent.action.BOOT_COMPLETED" />
</intent-filter>
</receiver>
至于数据库,则取决于您如何处理它以及应用程序的要求。根据定义,崩溃是无法捕获的
这就是撞车的原因。嗨,谢里夫:谢谢你的回复。我认为引导完成后应该在引导后发送。但我想知道何时重新启动(例如命令:adb reboot)或崩溃,以便我能够处理恢复数据库的操作。(时间应该是:崩溃/重新启动->恢复数据库->关机)然后下次系统重新启动时,数据库应该已经恢复。不可能捕捉到崩溃。即使你抓住了它,你也不能执行代码哦,好吧,我明白了。非常感谢你。