如何将现有的 Appcelerator Titanium 应用数据库迁移到原生的 Swift iOS 应用



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

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

以下是我的问题:

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

请注意,我需要在 Swift 中实现这一点 - 而不是目标 C

注意,我所做的基本上与这个问题相反:钛 - 从以前版本的iOS应用程序中检索SQLite数据

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

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

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

最新更新