如何在设备上运行应用程序时获取Sqlite数据库文件

如何在设备上运行应用程序时获取Sqlite数据库文件

本文介绍了如何在设备上运行应用程序时获取Sqlite数据库文件?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我在设备上运行时遇到访问数据库文件的问题。我怎么能得到那个文件?在模拟器上运行应用程序时访问文件没有问题。就像我在模拟器上运行应用程序一样,DB文件位于:

I am facing problem in accessing database file when I am running it on device. How can I get that file? There is no problem in accessing file when I am running application on simulator. Like when I am running application on simulator DB file is in :

/Users/Nitish/Library/Application Support/iPhone Simulator/4.3/Applications/1B787527-0608-4BC1-8022-DFDB3CC35F66/mysqlite.sqlite

我在哪里可以找到应用程序在设备上运行时的DB文件?

Where will I find the DB file when application is running on device?

推荐答案

我使用此方法获取数据库的URL:

I use this method for getting the URL to a database:

+ (NSURL *)storeURL
{
    if ([self isExecutingUnitTests])
    {
        NSString *directory = [[NSFileManager defaultManager] currentDirectoryPath];
        return [NSURL fileURLWithPath:[directory stringByAppendingPathComponent:@"UnitTests/test-database.sqlite"]];
    }
    else
    {
        return [NSURL fileURLWithPath:[NSHomeDirectory() stringByAppendingPathComponent:@"Documents/database.sqlite"]];
    }
}

它在模拟器上,在设备上工作正常即使执行单元测试!
UnitTests和Documents都应该存在于.xcodeproj的级别上。

It works fine on the simulator, on the device and even when executing unit tests!UnitTests and Documents should both exist on the level of the .xcodeproj.

这篇关于如何在设备上运行应用程序时获取Sqlite数据库文件?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

09-05 16:59