2011-03-05 36 views
0

我有一個來自外部SQlite管理器的問題數據庫。我想在我的應用第一次運行時創建一個數據庫。Android SQlite外部導入/創建

這是可能的,而不是寫代碼行的人?

回答

2

是的,這是可能的。您可以將SQLite文件放置在Android項目的assets文件夾中(或按需下載)並將其複製到已安裝應用程序的數據庫文件夾中。

解釋所有必要步驟的教程可以找到here

但是請注意,如果您將數據庫文件包含到您的APK中,它將消耗磁盤空間兩倍的磁盤空間(因爲它將作爲資產和可用數據庫存在兩次)。根據數據庫的大小,最好下載它,而不是將其嵌入到APK中。請注意,在Android 2.3之前,任何未壓縮大小超過1 MB的壓縮資源文件都無法從APK中讀取(並且任何資產將默認壓縮)。

+0

你是什麼意思下載它?也不能從資產文件夾中刪除文件嗎? – Somk 2011-03-05 16:26:04

+0

@Max AFAIK無法在運行時刪除資產。通過下載,我的意思是從互聯網上下載文件(例如使用HTTP),這會減少應用程序安裝的大小,因爲只有一個數據庫副本存在。 – Leo 2011-03-05 16:30:32

+0

爲此打包的解決方案可以作爲'SQLiteAssetHelper'找到,而不是爲所有自己的代碼滾動:https://github.com/jgilfelt/android-sqlite-asset-helper – CommonsWare 2012-06-02 14:36:20