我一直在寻找有关如何访问并保存到iPhone的钥匙串的UPDATED教程,但似乎找不到任何不会给我带来大量错误,并使用弃用的代码。
如果有人愿意指引我走向正确的方向,那就太棒了!
谢谢!
这是我得到的错误:
Undefined symbols for architecture armv7s:
"_kSecValueData", referenced from:
-[MainViewController viewDidLoad] in MainViewController.o
"_kSecAttrAccount", referenced from:
-[MainViewController viewDidLoad] in MainViewController.o
"_kSecAttrAccessibleWhenUnlocked", referenced from:
-[MainViewController viewDidLoad] in MainViewController.o
"_kSecAttrAccessible", referenced from:
-[MainViewController viewDidLoad] in MainViewController.o
"_OBJC_CLASS_$_KeychainItemWrapper", referenced from:
objc-class-ref in MainViewController.o
ld: symbol(s) not found for architecture armv7s
clang: error: linker command failed with exit code 1 (use -v to see invocation)
2ND错误:
Undefined symbols for architecture armv7s:
"_OBJC_CLASS_$_KeychainItemWrapper", referenced from:
objc-class-ref in MainViewController.o
ld: symbol(s) not found for architecture armv7s
clang: error: linker command failed with exit code 1 (use -v to see invocation)
答案 0 :(得分:3)
有点过时,但我们仍然使用Apple的Generic Keychain wrapper。
这里还有一个Gist这个类已经为ARC更新了(我没有亲自使用过,但看起来很有希望)。
祝你好运。编辑
根据此错误消息,您确定要链接Security
框架吗?如果没有,请按以下方式进行:
1)点击你的项目(左侧导航栏上的蓝色栏)
2)点击你的目标
3)单击“构建阶段”选项卡
4)点击“Link with Binary Libraries”展开
5)点击左下角的“加号”
6)添加标题为Security.framework
编辑2
您是否确保将#import KeychainItemWrapper.h
放入MainViewController
的标头或实施文件中?
如果是,您是否可以验证目标的构建阶段中确实包含KeychainItemWrapper.m
- >编译源? (如果不是,您可以通过左下角的“加号”添加它。)