1. 程式人生 > >3.26利用Spatialite for Android開發專案的基礎框架

3.26利用Spatialite for Android開發專案的基礎框架

問題描述:要利用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中的類來連線資料庫,進行相關操作了!