3

我的项目中嵌入了一个 SQLite 数据库文件。在模拟器上,查询数据库工作正常,但在设备上却不行。我在设备上运行时的数据库文件路径是这样的(如控制台上显示的NSLog):

数据库文件的路径是:/var/mobile/Applications/5914F328-148F-52E6-1AC9-38D7FF141F9B/MyApplication.app/db.sqlite

我寻找数据库的相关代码是:

    NSFileManager *fileMgr=[NSFileManager defaultManager];
    NSString *dbPath=[[[NSBundle mainBundle] resourcePath] stringByAppendingPathComponent:@"db.sqlite"];
    NSLog(@"The path for the database file is : %@",dbPath);//Display the whole path 

我知道模拟器和设备上的路径是完全不同的。那么我应该如何更改上面的代码以相对查找我的数据库文件?

4

1 回答 1

4

我解决了我的问题,对于那些在同一个问题上苦苦挣扎的人来说,我只需要将我的 SQLite 文件包含db.sqlite到我的 Bundle 资源中。单击project target-->Build Phases--->Copy Bundle Resources然后单击+按钮并添加您的 SQLite 文件,或者只是将您的 SQLite 文件从项目组和文件中拖放到那里。希望这有帮助:)

于 2012-06-19T00:22:20.423 回答