1

データベースを使用しないアプリケーションがありますが、いくつかの共有設定があります。アプリケーションの更新中に、既存の設定にいくつかの変更を加え、新しい設定を追加する必要があります。

グーグルで検索すると、 onUpgrade()メソッドを使用してアプリケーションのアップグレードの移行を処理できることがわかりましたが、そのメソッドには、アプリに存在しないデータベース名が必要です。

public void onUpgrade(SQLiteDatabase db、int oldVersion、int newVersion)

アプリケーションの更新中に既存の共有設定をアップグレードするための解決策を提案してください。

4

3 に答える 3

3

これから共有設定にバージョン番号を保存します。これを使用して、既存の共有設定が使用するスキーマを正確に判別し、そこから必要な処理を実行できます。

現在の状況では、「スキーマバージョン」設定がないことが、必要なことを何でも実行する必要があることを示しています。

onUpgrade()この状況では役に立ちません。)

于 2012-07-20T08:38:35.720 に答える
0

私はあなたが間違っていると思います。

public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion)

これはSQLiteOpenHelperクラスの関数です。データベースをアップグレードするとき/データベースのバージョン番号を増やすときに呼び出されます。

于 2012-07-20T08:37:01.657 に答える
0

私はあなたがこのようにできると思います

SharedPreferences mySharedPreferences=getSharedPreferences("name",mode);
SharedPreferences.Editor editor = mySharedPreferences.edit();
editor.putString(fileName, fileName);
editor.commit();
于 2012-07-20T08:38:43.577 に答える