我已經使用Sqlite Browser創建了數據庫AddressBookMaster.db,並在所提到的數據庫中創建了表AddressBook。但現在問題是我想在我的應用程序中使用這個.db文件,所以我應該在哪裏放這個數據庫文件,以及如何在應用程序中獲取?在android中使用外部數據庫
有沒有可以幫助我的任何示例或教程?
我已經使用Sqlite Browser創建了數據庫AddressBookMaster.db,並在所提到的數據庫中創建了表AddressBook。但現在問題是我想在我的應用程序中使用這個.db文件,所以我應該在哪裏放這個數據庫文件,以及如何在應用程序中獲取?在android中使用外部數據庫
有沒有可以幫助我的任何示例或教程?
Using your own SQLite database in Android applications中包含的信息應與您正在查找的內容完全吻合。
您應該注意,雖然這並不是很難,但它不僅僅是一組在您的應用程序之外完成的簡單命令。
「在Android應用程序中使用自己的SQLite數據庫」中包含的信息對於U來說是非常有用的,並且如果U具有超過1024字節大小的db,則首先將db拆分成小部分,然後將應用程序中的所有小dbs dirrectory。
您也可以將您的數據庫文件放入SDcard中。使用以下代碼從SDCard使用數據庫。
File dbfile = new File("/sdcard/Your_db_File.db");
SQLiteDatabase db = SQLiteDatabase.openOrCreateDatabase(dbfile, null);
請注意,您需要包含寫入/讀取外部存儲的'
使用android-sqlite-asset-helper,如果你想更改數據庫的默認文件夾到SD卡,以填補(初始化)上安裝
您的應用程序的數據庫:
public class MyApplication extends Application {
@Override
public void onCreate() {
SQLiteOpenHelper helper = ..
SQLiteDatabase db = helper.getWritableDatabase()
}
@Override
public File getDatabasePath(String name) {
return new File(getDatabasePathString(name));
}
@Override
public SQLiteDatabase openOrCreateDatabase(String name, int mode, SQLiteDatabase.CursorFactory factory) {
return super.openOrCreateDatabase(getDatabasePathString(name), mode, factory);
}
@Override
public SQLiteDatabase openOrCreateDatabase(String name, int mode, SQLiteDatabase.CursorFactory factory, DatabaseErrorHandler errorHandler) {
return super.openOrCreateDatabase(getDatabasePathString(name), mode, factory, errorHandler);
}
/*Put the default folder to store database of your application/or activity here */
public String getDatabasePathString(String name) {
return getExternalCacheDir()+ "/" + name+".db"; /* /storage/emulated/0/Android/data/com.my.app/cache */
}
}
謝謝您的回答,但問題是我如何拆分數據庫? Nandlal virani形式S. K. Patel研究所我對不對? – Nirav 2011-03-19 06:58:54