2013-02-06 52 views
2

這些是我的SAMSUNG TAB2中的內存。Samsung Tab2(外部Micro SD卡)中的SQLite數據庫

1- Internal

2- Sdcard

3- **Extrenal_sdcard**(可移除存儲器)不sdcardExtrenal_sdcard之間混淆。

Extrenal_sdcardmicro sd card我們可以從標籤中刪除。

我正在嘗試在Extrenal_sdcard(Removable)中創建SQLite數據庫。

但我沒有成功。

我試圖像做我們在Sdcard那樣做。

Environment.getExternalStorageState() +filename 

Extrenal_sdcard(可拆卸),它不工作。

是否有可能我在做什麼或不是。

請幫助我。

不提供相關鏈接如何在SD卡中創建數據庫。

回答

0

我還沒有嘗試過你在那裏描述的內容,但大概是可以完成的,並且可能會有效 - 只需要注意幾點。首先,外部存儲(SD卡)不安全,因此任何其他應用程序或用戶都可以讀取/寫入。其次,正如你所說的,當它被卸載時,數據庫就會消失。

由於存在這些缺點,您最好嘗試使用內部存儲數據庫(默認值),該數據庫很小,可能包含指向外部數據(如圖像或文件)的指針 - 本身可以是在外部存儲器上(並且具有佔位符或其他處理,當外部存儲器不可用時)。

不過,如果你想嘗試它,你可能會更好的替代方法getDatabasePathContext,如用自己的Application對象,然後傳遞到常規SQLiteOpenHelper。那麼你不必擔心遊標工廠(這是可選的,as the source confirms - 所以只是傳遞null,而不是你想要的路線)。

+0

in context.getDatabasePath(「」)我將提供什麼路徑。我的external_sdcard路徑或其他 – Unknown

+0

你可以通過context.getDatabasePath(DataBaseHelper.dbName) – jlopez

+0

得到路徑,那麼它不會工作。我相信...因爲它默認會採取內部或SD卡路徑。 – Unknown