Android'de sqlite veritabanının var olup olmadığını ve açıp kullanabiliyorsam onu görmek için aşağıdaki yöntemi kullanıyorum.Android'de, sqlite veritabanının zaman zaman başarısız olup olmadığını kontrol edin
Bu sınama başarısız olursa veritabanı dosyasını varlıklardan kopyalarım (kullanıcının yalnızca uygulamayı ilk kez başlattığı zaman bir kez gerçekleşmesi gerekir).
/*
* Check if the database already exist to avoid re-copying the file each time you open the application.
* @return true if it exists, false if it doesn't
*/
private boolean checkDataBase() {
SQLiteDatabase checkDB = null;
try {
String myPath = DB_PATH + DB_NAME;
checkDB = SQLiteDatabase.openDatabase(myPath, null, SQLiteDatabase.OPEN_READONLY);
} catch(SQLiteException e) {
//database does't exist yet.
}
if(checkDB != null){
checkDB.close();
}
return checkDB != null ? true : false;
}
sorun
Ben kullanıcılardan raporlar kendi veri sildi edildiğini söyleyerek olsun ve soruşturma ne zaman veritabanı varlıklarından veritabanı ile değiştirilir görebilirsiniz olmasıdır. Bu nedenle, kullanıcı zaten bir veritabanı dosyasına sahip olsa bile, bazen SQLiteDatabase.openDatabase() bir hata atar. Sorunu kendim üretemedim, ancak bazı kullanıcılar için böyle görünüyor.Sorunun ne olabileceği hakkında bir fikri olan var mı? Bu testi yapmanın daha iyi bir yolu var mı?
Bu benim için işe yaramaz bu http://stackoverflow.com/questions/20728808/android-reading-stored-sqlite-database – gandharv09