私のアプリは学校の成績を追跡し、平均を計算し、これらすべてを SQLite データベースに保存します。ユーザーが再インストールする必要があるか、新しい電話を入手する必要がある場合、データを復元できるようにしたいと考えています。
ほとんどの開発者は、SD カードにバックアップするか、Google のAndroid Backup Serviceを使用してこれを行っているようです。どちらがより良い方法かはわかりません。シンプルだが信頼できるように復元したいと思います。これについてのコメントを歓迎します。
私が理解しようとしているのは、Google がデータベースを使用するBackupAgent
代わりに拡張するように言っている理由です。BackupAgentHelper
ユーザーがアプリケーションを再インストールしたときに復元する SQLite データベースがある場合は、バックアップ操作中に適切なデータを読み取るカスタム BackupAgent を構築する必要があります。その後、テーブルを作成し、復元操作中にデータを挿入します。
データベースをファイルとしてバックアップしてから、そのファイルを復元できないのはなぜですか? データベースのバージョンが異なる場合、私SQLiteOpenHelper
のクラスはすでにアップグレードを処理しています。ダウングレードで中止できると思います。