私のDBの実装では、私はExcelファイルからonCreate
方法にいくつかの初期データを置くこのSqliteをデータベースには、まだ私でもクリアデータが存在すると
public class DbHelper extends SQLiteOpenHelper {
private static DbHelper mDbHelper;
private Context context;
public static synchronized DbHelper getInstance(Context context) {
if (mDbHelper == null) {
checkDataBase(context);
mDbHelper = new DbHelper(context.getApplicationContext());
Log.d(log, context.getDatabasePath(DB_NAME).getPath());
}
return mDbHelper;
}
public DbHelper(Context context) {
super(context, DB_NAME, null, version);
this.context = context;
}
}
のようなものである6.0.1デバイスからアプリケーションを削除します。データを消去してアプリを削除した後、Android Studioからアプリをインストールすると、データベースがあるように動作し、onCreate
メソッドを呼び出すことはありません。それはまた、古いExcelファイルから私の古いデータをもたらします。データを消去すると、DBを削除する必要があります。
私はLogcatでパスを記録し、それは言う:/data/user/0/com.mypackage.app/databases/dbname
が、私は私のデバイスでどこかで生きているデータベースを保持するキャッシュがあると思います。それは私の6.0.1デバイスでのみ発生します。 5.1.1で正常に動作します
データベースを削除するアドバイスはありますか?
私もnexus 6Pでこれを気付きましたが、問題を回避するために、アンインストール後に電話機を再起動してから、もうデータがありません。 – tyczj
おっと!私の問題は再起動しても解決しました。しかし、私は楽しみにしています私のユーザーのいくつかは、新しいバージョンに更新したときにこの問題に直面している場合は? : –
アプリケーションの更新時に自動的に行われますが、 'db_version'を増やすだけで、現在の**データベースに追加、編集、削除することができる' onUpgrade() 'が起動します。行、表** ... – Yazan