我一直在努力讓這個工作太久。我剛開始進入PhoneGap/Cordova。我得到了演示應用程序的運行,安裝了所有官方插件,並添加了這個SQLite插件開始工作:https://github.com/brodysoft/Cordova-SQLitePluginPhoneGap - 閱讀預先打包的sqlite數據庫
但是,我希望插件讀取預打包的數據庫。簡而言之,創建一個脫機工作的應用程序,並且無需在第一次運行時下載SQLite數據庫。
我一直在爲Android開發相當長的一段時間,解決方案是在資產文件夾中部署一個只讀數據庫文件,並在第一次運行時將數據庫文件複製到另一個文件夾中,在那裏我可以讀取/按我的意願寫。
所以我做了一點研究,並意識到它應該與PhoneGap相同。將二進制SQLite數據庫放置在某處,以便在構建時將其與應用程序打包在一起。然後簡單地用我在這裏鏈接的SQLite插件加載它。
最後,這個問題!爲了能夠讀取與應用程序一起打包的文件,我必須採取哪些確切步驟?
- 我應該在哪裏放置我的二進制文件以確保它被打包到應用程序中?
- 我應該如何初始化File API?我應該問使用
window.requestFileSystem
持久性存儲嗎?或者我應該使用window.resolveLocalFileSystemURL
作爲DirectoryEntry
獲取一些(不知道哪個)目錄(cordova.file.applicationDirectory
)?如果是這樣,我應該使用哪些EXACT參數?我主要是指這個:https://github.com/apache/cordova-plugin-file/blob/master/doc/index.md - 如何讀取打包文件?使用
window.resolveLocalFileSystemURL
與正確的文件夾?那麼參數應該是什麼? - 如果我到了這一步,文件複製應該可以正常工作。只需將只讀
cordova.file.applicationDirectory
複製到可讀寫的cordova.file.dataDirectory
即可。對?
我知道這些問題可能是非常基本的,但我無數的嘗試都是失敗的,我沒有找到一個解釋這個問題的教程(相信我,我用Google搜索了一下)。此外,文件似乎不足。
只使用WebSQL數據庫並加載數據,使用s ***加載INSERT
s的數據庫不是一個可行的選項,數據庫有數千條記錄。
感謝您提前的幫助,您將爲我節省一兩個頭痛。
截至2017年,情況仍然如此,Cordova-sqlite-storage不支持預填充數據庫嗎?你也知道在哪裏把文件放入Ionic2應用程序? – 2017-01-02 19:45:04