问题标签 [keychainitemwrapper]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ios - KeychainWrapperItem 在 iOS 7.1 中停止工作
我最近安装了 iOS 7.1 模拟器和新的 Xcode 5.1。我的应用程序在 iOS 7 中运行良好。我正在使用 Apple 的 KeychainItemWrapper 类。更新后它崩溃并显示以下消息:
特别是在第 299 行:
听到错误 -25300 ( errSecItemNotFound )
我在我的权利文件中指定了钥匙串访问组。此错误仅发生在 iOS 7.1 模拟器中,而不发生在发生在真正的 iPhone 或 7.0 模拟器中。
有谁知道 Keychain 在 7.1 中发生了什么变化?
ios - 在后台获取运行时来自 NSData 的 NSString 崩溃
我有这种方法可以检查我们是否在钥匙串中存储了用户名和密码:
密码被返回,NSData
因此需要转换为字符串。这在正常使用中工作得非常好,但是当它在后台application:performFetchWithCompletionHandler:
方法中使用时,我有时会遇到指向此行的崩溃:
崩溃日志抱怨
我只在分发 AdHoc 构建后才看到这些崩溃。我假设崩溃日志说此时该passData
变量实际上是一个字符串?有什么想法吗?
谢谢
编辑 - -
[self.keychainItem setObject:password forKey:(__bridge id)kSecValueData];
password
只需使用NSString即可将密码添加到钥匙串中。我从这里使用 KeychainItemWrapper将密码 NSString 转换为 NSData 但不会再次将其转换回来,这就是我这样做的原因。
编辑 2 ----
在调试崩溃后,我检查了你的 passData 变量,实际上应该是 NSData 的 NSString,所以有时我会得到 NSData,而且我时不时会得到 NSString。
ios - 钥匙串可以像类固醇上的 NSUserDefaults 一样用于存储 NSData 吗?
钥匙串可以像NSUserDefaults
类固醇一样使用吗?我的意思是,例如,存储NSData
在游戏中使用?
我的意图是存储一个NSData
元素,该元素本质上是数组或字典的表示形式。
所以问题是:
假设我使用 Apple 的KeychainItemWrapper
类创建了一个包装器。这是kSecValueData
在钥匙串文档中提到的NSData
对象吗?
如果是这样,我可以做到这一点,对吧?
NSData
第二个问题:如果是这种情况,钥匙串项目可以存储的大小是否有限制?
ios - iOS 钥匙串在设备之间共享数据
我有一堆应用程序使用相同的钥匙串组来共享一些敏感数据。在同一设备上测试应用程序时效果很好,它们可以访问和编辑共享数据。我想知道是否可以在 iDevices 之间共享数据,我的 iPad (iOS 7) 和 iPhone (iOS 6) 似乎将它们分开存储(它是本地的吗?),我认为它被安全地存储在 Apple 的服务器中,因为它被称为 iCloud钥匙链。
我使用RayWenderlich 教程中的KeychainWrapper类,稍作修改以获得唯一的钥匙串访问组。
是否可以使用 Keychain 在设备和应用程序之间同时共享数据?如果是这样我应该如何实施它?
ios - AppStore 更新后 STKeychain 无法找回密码
设想:
- 我们的应用程序将后端令牌存储在设备的钥匙串(STKeychain,ex SFHFKeychainUtils)中。
- 后台提取被禁用。
- 最近发布了一个升级。
我们收到有关用户必须重新登录的报告。这似乎是 STKeychain 令牌检索期间的一个问题(存储的密码被检索为 nil)。
STKeychain(或iOS钥匙串本身)中是否有任何已知的错误会导致此类问题?
在此先感谢,任何线索都将受到欢迎!
keychain - GenericKeyChain KeychainItemWrapper.m 复制到另一个项目时无法编译
我编译并运行 Apple 的 GenericKeyChain 示例代码。那里没有问题。现在我想在我的新项目中同时使用 KeychainItemWrapper.m 和 KeychainItemWrapper.h 这两个文件,我得到了很多编译错误。我看到 Apple 的示例代码正在使用 ARC。此处的其他帖子指示人们为此文件禁用 ARC。那没有用。我在我的新项目中链接了安全框架。我的问题是我应该怎么做才能在我的新项目上成功编译这两个文件。为什么 Apple 示例代码编译没有问题。编译错误主要是 ARC Casting Rules 和 ARC 限制以及使用“release”的语义问题。
ios - 从 KeychainItem 检索值
我尝试从 KeyChainItem 中检索一个字符串,该字符串存储如下:
当我如下检索它时:
我收到了 NSLog(@"%@",token); 的以下值
如何检索我保存的字符串?我在这里做错什么了吗?
ios - iPhone内存压力导致iOS钥匙串数据丢失?
我正在通过 iPhone 5s 上的调试器运行 iOS 应用程序。我正在使用钥匙串来存储密码(我正在使用 Apple 的 KeychainItemWrapper 示例来存储和检索我的钥匙串项目)。大约 99.99% 的时间,钥匙串检索工作完美。但是,有两种情况我的应用程序无法获取密码。例如,有一次,我的手机出现内存压力,我不得不重启手机并重新启动应用程序。应用程序重新启动后,我的应用程序无法再从钥匙串中检索密码。请问这个密码丢失是不是这个内存压力造成的?iOS 还会清除哪些其他情况下的钥匙串数据?有没有办法介绍这个??
ios - iOS在钥匙串中保存物理应用收据?
我想将物理应用内购买收据存储在钥匙串中,从而允许在用户跨设备设置钥匙串时在设备之间复制它。
我的问题是如何将收据(NSData)保存到钥匙串?
最终,我想保存收据本身以及一个字符串,其中包含一个字符串以显示适用的 IAP 级别,也许还有一个到期日期。
任何帮助将不胜感激。
ios - iOS 将数据存储在钥匙串中以供跨设备使用
我正在尝试将数据写入 iCloud 钥匙串并让它在使用相同 Apple ID 的设备之间复制。
如果我安装一个应用程序并调用以下代码,写一个条目,然后读取,我会看到正在读回的数据以登录当前设备。
但是,如果我在使用相同 Apple ID 的另一台设备上安装相同的代码并打开 iCloud/钥匙串,如果我尝试从该设备上的钥匙串读取数据,我将看不到数据。
我曾尝试在功能中启用 icloud 和钥匙串共享,但无济于事。
有人可以指出我正确的方向吗?