核心数据文件的位置iOS 10
我想我们SQLite浏览器看到我的核心数据对象。 我无法find核心数据保存在哪里的SQL文件。 我看着应用程序文档文件夹,但没有什么。
你知道IOS 10(模拟器)的核心数据保存在SQLite文件上吗?
我在XCode 8 Swift 3 OS macOS Sierra上进行了testing
IOS 10
在你的Appdelegate.swif t
func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool { let urls = FileManager.default.urls(for: .documentDirectory, in: .userDomainMask) print(urls[urls.count-1] as URL) return true }
1.常量.documentDirectory
表示我们正在寻找Document目录
2.常量.userDomainMask
将我们的search限制在我们的应用程序的沙箱中。
产量
file:///Users/Ashok/Library/Developer/CoreSimulator/Devices/F629F99F-C745-46EB-8A11-01BC9FF1E592/data/Containers/Data/Application/3B373C93-71A2-46E9-8AF7-EF407C39429F/Documents/
点击前往 – >转到文件夹 – >粘贴path – >按回车
然后转到库 – >应用程序支持 – > filename.sqlite
编辑
要么
打开你的terminal,inputfind ~ -name 'HitTest.sqlite'
然后回车。
Ashoks-MacBook-Pro:Desktop Ashok$ find ~ -name 'HitTest.sqlite' /Users/Ashok/Library/Developer/CoreSimulator/Devices/F629F99F-C745-46EB-8A11-01BC9FF1E592/data/Containers/Data/Application/3B373C93-71A2-46E9-8AF7-EF407C39429F/Documents/HitTest.sqlite
从上面的输出你可以清楚地看到你的sqlite数据库的path
您可以使用DB Browser for SQLite打开。
试试这个,我没有检查它的ios 10,但它的工作在以前的所有版本
产品>scheme>编辑scheme>运行>参数
在“ 启动时通过的参数”中添加此参数
-com.apple.CoreData.SQLDebug 1
每当应用程序启动时它将打印数据库的path请参阅这个参数是这样的
Swift 3.x
在您的AppDelegate文件中finddidFinishLaunchingWithOptions并添加此行。
let path = NSSearchPathForDirectoriesInDomains(.applicationSupportDirectory, .userDomainMask, true) print("\(path)")
对于XCODE 8.0(iOS 10): –
.sqlite持久存储的path是:
/ Users / Ashish / Library / Developer / CoreSimulator / Devices /“YourDeviceId”/ data / Containers / Data / Application /“Application Id”/ Library / Application Support /“FileNamePassedInPersistentContainer.sqlite”