【问题标题】:Appcelerator / Titanium location of iOS simulator sqlite databaseiOS模拟器sqlite数据库的Appcelerator / Titanium位置
【发布时间】:2017-05-30 17:10:21
【问题描述】:

我发布此内容是为了帮助那些在使用 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("app directory: " + Ti.Filesystem.applicationDataDirectory);

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

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

/Users/[用户名]/Library/Developer/CoreSimulator/Devices/96662E38-C659-4568-B53F-C32DC6B2B73D/data/Containers/Data/Application/96662E38-C659-4568-B53F-C32AB6B2C03D /Library/Private Documents/[文件名].sql

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

4.我确定您可以在您的应用程序中引用另一个目录,但我正在寻找默认存储目录,因为我的应用程序使用此位置。

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

编码愉快!

【问题讨论】:

    标签: sqlite appcelerator appcelerator-titanium


    【解决方案1】:

    获取包含数据库的简单方法是将其添加到资源文件夹或资源目录中的子文件夹。然后您只需调用 Ti.Database.install() 方法。这会将数据库复制到您找到的模拟器位置。这种方法的好处是你没有找到每个 iOS 模拟器的位置(即 iPhone 5、6、6 plus、7...)。

    当我需要使用 SQLite 管理器或其他此类程序从外部查询数据库时,我确实使用您的方法。

    您可以在这里阅读更多内容http://docs.appcelerator.com/platform/latest/#!/guide/Working_with_a_SQLite_Database

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-01-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-11-16
      • 1970-01-01
      相关资源
      最近更新 更多