我在设备上运行时找不到SQLite文件

时间:2012-06-16 05:43:15

标签: ios xcode sqlite

我的项目中嵌入了一个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 

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

1 个答案:

答案 0 :(得分:4)

我解决了我的问题,对于同样问题的人,我需要将我的SQLite文件db.sqlite包含在我的Bundle资源中。点击你的project target-->Build Phases--->Copy Bundle Resources,然后点击+按钮并添加你的SQLite文件,或者只是从项目组和文件中拖动你的SQLite文件并将其放在那里。希望这有帮助:)