ios - 如何将现有 Appcelerator Titanium 应用程序数据库迁移到 native Swift iOS 应用程序

标签 ios swift cocoa-touch appcelerator appcelerator-titanium

我即将将最初用 Appcelerator 的 Titanium 编写的应用程序重建为用 Swift 编写的完全原生的 iOS 应用程序。

该应用程序严重依赖于使用钛合金模型创建的 SQLite 数据库,用户可以将项目保存到手机上的本地数据库中。当用户使用新重建的版本更新其应用程序时,我需要能够访问这些数据。

这是我的问题:

  • 应用更新时数据库会保留吗?
  • 我可以使用新的 Swift 应用访问数据库吗?
  • 我仍然可以在新的 swift 应用中为数据库项目创建模型吗?
  • 如果我在 Swift 中创建模型,它们会覆盖我在 Titanium 中创建的表吗?用户的数据会丢失吗?
  • 是否有一套最佳实践?

请注意,我需要在 Swift 中实现此目的 - 而不是 Objective C

注意,我所做的基本上是这个问题的相反: Titanium - Retrieving SQLite Data from previous version of iOS App

最佳答案

除非您另有说明,Alloy 将在 Ti.Database.open() 下记录的位置生成一个 _alloy_ 数据库。 .

除非您在模型适配器配置中指定 idAttribute,Alloy 将创建一个 alloy_id UNIQUE TEXT 列来存储每个模型的唯一 guid型号。

除此之外,它是一个普通的旧 SQLite 数据库,您可以从 Swift 访问它。

关于ios - 如何将现有 Appcelerator Titanium 应用程序数据库迁移到 native Swift iOS 应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36132821/

相关文章:

ios - JSON 的 NSMutableDictionary

ios - Xcode:在 Utilities/Size/View 中设置宽度和高度与作为约束

iOS Swift viewForHeaderInSection 未被调用

ios - UInt8如何分为3位和5位

iphone - 我们如何以编程方式更改 iPhone 屏幕的亮度?

ios - 将模型从 UINavigationView 转发到 UIView

ios - 按下后退按钮时更改界面方向

ios - 如何对键的 NSArray 进行排序?

ios - 如何使用 Swift 播放声音?

iOS 8.3 及更高版本,未插入 Facebook 分享文本