必要に応じてデータベースを更新する機能を実装しました。
(例: データベースのカラム値の 1 つを B に変更)
システムがクラッシュしたり、再起動したり、故障したりした場合、
データベースを元に戻すために処理できることはありますか?
(例: データベースの列の値の 1 つを A に戻す)
手伝ってくれてありがとう。
<uses-permission android:name=”android.permission.RECEIVE_BOOT_COMPLETED” />
必要なアクションを実行するものを定義BroadcastReceiver
します。
manifest
次のように sthが必要になります。
<receiver android:name=”.MyReceiver”>
<intent-filter>
<action android:name=”android.intent.action.BOOT_COMPLETED” />
</intent-filter>
</receiver>
デバイスが完了すると、インテントをブロードキャストし、このブロードキャストに登録することで呼び出しを受けることができます:
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>
データベースの場合、それをどのように処理し、アプリが何を要求するかはあなた次第です。
定義上、クラッシュはキャッチできません。
それがクラッシュをクラッシュにするものです。