アプリをアンインストールしてインストールせずに、アプリを再インストールするときに共有設定データを削除またはリセットする方法はありますか?
つまり、現在、共有設定を使用するアプリを開発していますが、まだ開発中であるため、変更を加えた後も Eclipse を介してアプリを実行し、テスト電話にアップロードし続けます。現在、古いバージョンをアンインストールしてからアプリを再度アップロードしないと、予想されるプロセスの最初から (初回の後) アプリを実行できません。
アプリをアンインストールしてインストールせずに、アプリを再インストールするときに共有設定データを削除またはリセットする方法はありますか?
つまり、現在、共有設定を使用するアプリを開発していますが、まだ開発中であるため、変更を加えた後も Eclipse を介してアプリを実行し、テスト電話にアップロードし続けます。現在、古いバージョンをアンインストールしてからアプリを再度アップロードしないと、予想されるプロセスの最初から (初回の後) アプリを実行できません。
次のようなアクティビティをクリアします。
Intent intent = new Intent(this, Login.class);
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(intent);
共有設定をクリア:
SharedPreferences pref = this.getSharedPreferences("mypref", Context.MODE_PRIVATE);
getSharedPreferences("pref", Context.MODE_PRIVATE).edit().clear().commit();
これについては、起動アクティビティの onCreate() メソッドで、共有設定ファイルが存在するかどうかを確認し、存在する場合は削除します。後で必要な場所に作成します。設定ファイルが存在するかどうかをこのように確認できます。
public boolean isFirstTime() {
return getDatabasePath("your file name").exists();
}
次のような関数を使用して、設定をクリアするかどうかを起動アクティビティで確認します。
SharedPreferences prefs = this.getSharedPreferences("prefs", Context.MODE_PRIVATE);
if (!prefs.getBoolean("FirstRun", true)) {
// Not the first time so clear prefs
prefs.edit().clear().commit();
} else {
// Set the value for future runs
prefs.edit().putBoolean("FirstRun", false).commit();
}