3.26利用Spatialite for Android開發專案的基礎框架
阿新 • • 發佈:2018-12-24
問題描述:要利用Spatialite這個資料庫來開發Android專案,首先要能夠將sqlite資料庫檔案存到手機的某一資料夾下,因此就涉及到獲取系統檔案路徑和複製資料庫檔案的操作!
解決方案:具體的解決方案在spatilite-android這個專案中已經給出來了,通過兩個類來實現,ActivityHelper和AssetHelper
AssetHelper.CopyAsset(this, ActivityHelper.getPath(this, true), getString(R.string.test_db));
static public File getPath(Context ctx, boolean externalStorage) {
if (externalStorage) {
return ctx.getExternalFilesDir(null);
} else {
return ctx.getFilesDir();
}
}
通過不同的設定,我們可以將資料庫檔案放在不同的路徑下!
然後我們需要在AndroidManifest.xml中配置一下專案的許可權,保證路徑能夠獲取到!
<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
而資料庫檔案一開始放在專案的什麼位置呢?
它可以放在build資料夾下的intermediates中的assets裡,不過你也可以在main下建一個assets資料夾,將資料庫檔案放在其中即可!
然後,我們就可以利用jsqlite中的類來連線資料庫,進行相關操作了!