iOS Locksmith无法将存储的数据从服务移动到" A"服务" B"

时间:2017-04-11 15:43:52

标签: ios iphone swift keychain uickeychainstore

在我的一个iOS应用程序中,我正在开发我在Keychain中存储一些信息。要与钥匙串互动,我使用的是Locksmith(https://github.com/matthewpalmer/Locksmith

在我的应用程序的v1版本中,我使用

在钥匙串中写了一些数据
Locksmith.saveData(data: data, forUserAccount:"A1", inService: "S1")

现在,在v2中,我意识到我想从" S1"迁移我的数据。到了" S2",所以我开始编写一个小的迁移脚本来实现这个目标。

基本上,我在做什么:

// read the old data
if let d = Locksmith.loadDataForUserAccount(userAccount: "A1", inService: "S1") {

   // write it in a new location
   Locksmith.saveData(data: d, forUserAccount: "A1", inService: "S2")
}

这是对我的代码的过度简化。

问题在于每次d = nil,虽然我确定它存在(当我构建应用程序的v1时,我可以看到数据存在于该位置)。

有关于此的任何想法吗?有人遇到过这个问题吗?

一些技术规格:

  • Xcode 8.3
  • Swift 3.1
  • 锁匠3.0(通过迦太基)
  • 运行iOS 10.3的iOS模拟器(iPhone 6s)

没有尝试使用真实设备。

0 个答案:

没有答案