iOS模拟器sqlite数据库的Appcelerator/Titanium位置

iOS模拟器sqlite数据库的Appcelerator/Titanium位置,sqlite,appcelerator,appcelerator-titanium,Sqlite,Appcelerator,Appcelerator Titanium,我发布这篇文章是为了帮助用户,他们将遇到与我在使用Appcelerator时尝试查找iOS模拟器上使用的sqlite数据库时遇到的相同情况 xCode版本:8.3.x Appcelerator Studio:4.8.x/SDK:6.x 问题/测试用例:我需要测试将数据从sqlite数据库加载到远程mySQL服务器的多次迭代。我想在文件夹中放置一个现有的sqlite数据库文件,并让模拟器识别这个文件,以便我可以使用它进行测试/开发 问题:iOS模拟器上存储的sqlite数据库在哪里?我能否将现有的

我发布这篇文章是为了帮助用户,他们将遇到与我在使用Appcelerator时尝试查找iOS模拟器上使用的sqlite数据库时遇到的相同情况

xCode版本:8.3.x

Appcelerator Studio:4.8.x/SDK:6.x

问题/测试用例:我需要测试将数据从sqlite数据库加载到远程mySQL服务器的多次迭代。我想在文件夹中放置一个现有的sqlite数据库文件,并让模拟器识别这个文件,以便我可以使用它进行测试/开发

问题:iOS模拟器上存储的sqlite数据库在哪里?我能否将现有的sqlite数据库放置在此文件夹中,并让我的应用程序识别它

回答:

实现的步骤: 这就是我所做的,以定位模拟器/设备正在寻找的位置

1。通过将此代码添加到index.js(或您选择的其他文件)中,找出您的应用程序在文件系统中的位置。

Ti.API.info(“应用程序目录:”+Ti.Filesystem.applicationDataDirectory)

这将为您提供长文件系统目录位置: /Users/[username]/Library/Developer/CoreSimulator/Devices/96662E38-C659-4568-B53F-C32DC6B2B73D/data/Containers/data/Application/96662E38-C659-4568-B53F-C32AB6B2C3D/Documents/

2。这几乎是正确的位置,但sqlite数据库实际上存储在以下位置:

/Users/[username]/Library/Developer/CoreSimulator/Devices/96662E38-C659-4568-B53F-C32DC6B2B73D/data/Containers/data/Application/96662E38-C659-4568-B53F-c32ab2c03d/Library/Private Documents/[filename].sql

3。您可以使用此位置放置现有的sqlite数据库文件,并对其执行sql语句。

4。我确信您可以引用应用程序中的其他目录,但我正在查找默认存储目录,因为我的应用程序使用此位置。

希望这对其他人有所帮助,因为我正在寻找用于测试/开发的特定功能


快乐编码

一种简单的方法是将数据库添加到resources文件夹或resources目录中的子文件夹中。然后您只需调用Ti.Database.install()方法。这将把数据库复制到您找到的模拟器位置。这种方法的好处是,您不必为每个iOS模拟器(即iPhone 5、6、6 plus、7…)找到位置

当我需要使用SQLite manager或其他类似程序从外部查询数据库时,我确实会使用您的方法

你可以在这里读更多