Android アプリに ContentProvider を実装しましたが、非常にうまく機能しますが、スキーマに変更を加えると、データベースがアップグレードされないようです。SQLiteOpenHelper に次のコードがあります。
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
Log.w(DEBUG_TAG, "Upgrading database. Existing contents will be lost. ["
+ oldVersion + "]->[" + newVersion + "]");
db.execSQL("DROP TABLE IF EXISTS " + TABLE_TUTORIALS);
onCreate(db);
}
アプリを新しいスキーマで更新すると、すべての挿入が失敗しますが、古いバージョンをアンインストールして新しいバージョンのアプリをインストールすると、すべて正常に動作します。したがって、 onUpgrade() が呼び出されることはないと思います。oldVersion と newVersion は何を参照していますか? バージョンをどこかに指定する必要がありますか?