SDK 1.7.7 にアップグレードしたところ、アプリケーションがローカル データ ストアにアクセスできなくなりました。少しグーグルで調べたところ、これは通常、SDK をアップグレードするときに発生することがわかりました。
既存のデータを保持できる解決策が見つからないようです。データストアに大量のテスト データを設定しましたが、再作成する必要はありません。ローカル データストアのデータをある SDK バージョンから別のバージョンに移行/移行する方法はありますか?
SDK 1.7.7 にアップグレードしたところ、アプリケーションがローカル データ ストアにアクセスできなくなりました。少しグーグルで調べたところ、これは通常、SDK をアップグレードするときに発生することがわかりました。
既存のデータを保持できる解決策が見つからないようです。データストアに大量のテスト データを設定しましたが、再作成する必要はありません。ローカル データストアのデータをある SDK バージョンから別のバージョンに移行/移行する方法はありますか?
私が使用する手順は次のとおりです。
1) remote_api 接続を作成し ます https://developers.google.com/appengine/articles/remote_api
何かのようなもの
static RemoteApiOptions options;
options = new RemoteApiOptions().server("localhost", 8888).credentials("", ""); // password doesn't matter
RemoteApiInstaller installer = new RemoteApiInstaller();
installer.install(options);
2) データをフェッチします (これは Objectify を使用した場合ですが、通常はこの方法で行います)
UserDAO udao = new UserDAO(false);
Query<UserOFY> qu = udao.ofy().query(UserOFY.class);
3) データをハードドライブに永続化する
何かのようなもの
FileOutputStream fileOut = new FileOutputStream(LOCAL_AE_BACKUPS_USER + "/" + USERS_FROM_LOCAL_BACKUP + "_" + u.getNickName());
ObjectOutputStream out = new ObjectOutputStream(fileOut);
out.writeObject(u);
out.close();
次に、バージョンをアップグレードした後、逆のことを行います。
1) ハード ドライブに保存されているデータを読み取る
2) ローカル データストアに接続する
3) データを新しいバージョンのローカル データストアに永続化する