2011-10-12 66 views
0

我想出了一個奇怪的問題。我在我的應用程序中使用sqlite數據庫。該應用程序在模擬器中運行時工作正常,但是當我在iPhone設備上部署應用程序時,它不會從數據庫讀取數據。另外,當我嘗試向表中插入某些東西時,它會說沒有這樣的表,這意味着我的數據庫實際上並未複製到設備中。我已經嘗試使用Build-> Clean all Targets清理項目,刪除Build文件夾並手動從設備中刪除應用程序。然後再試一次。但沒有運氣。當然,我已將數據庫添加到資源中,並且可以找到並實際讀取內容。請在設備上部署時指導我最新的錯誤。數據庫未從資源複製到iPhone設備

+0

您是否已將數據庫文件複製到文檔目錄?如果不是在第一個地方做,並且每當你想在其中執行CRUD操作時讀取數據庫。 – Manoj

回答

0

首先檢查您是否將數據庫複製到複製資源構建階段的包中。當資源是不能修改的軟件包,您需要將它複製到應用程序的文件目錄

NSString *documentsDirectory = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) objectAtIndex:0]; 
0

我卻從未設法得到這個權利。這就是爲什麼我有一個構建腳本安裝程序,它可以將任何sqlite數據庫轉儲到.sql文本文件中。在手機上第一次運行應用程序時,我只是從這些sql行生成sqlite數據庫。對於我來說,比起使用sqlite的二進制文件工作起來更省錢。