我正在尝试将数据写入iCloud Keychain,并使用相同的Apple ID在设备上进行复制。
如果我安装了一个应用程序并调用以下代码,写入一个条目,并且读取,我会看到正在读回的数据以登录当前设备。
但是,如果我在使用相同Apple ID的其他设备上安装相同的代码,并且iCloud / keychain已打开,如果我尝试从该设备上的钥匙串读取,我看不到数据。
我尝试在功能上启用icloud和keychain共享无济于事。
有人能指出我正确的方向吗?
-(void)writekc{
KeychainItemWrapper *keychainItem = [[KeychainItemWrapper alloc] initWithIdentifier:@"AppName" accessGroup:nil];
[keychainItem setObject:@"password" forKey:(__bridge id)(kSecValueData)];
[keychainItem setObject:@"username" forKey:(__bridge id)(kSecAttrAccount)];
}
-(void)readkc{
KeychainItemWrapper *keychainItem = [[KeychainItemWrapper alloc] initWithIdentifier:@"AppName" accessGroup:nil];
NSString *password = [keychainItem objectForKey:(__bridge id)(kSecValueData)];
NSString *username = [keychainItem objectForKey:(__bridge id)(kSecAttrAccount)];
NSLog(@"Password:%@, User:%@",password,username);
}
答案 0 :(得分:1)
最后我使用了内置同步功能的SSKeyChain。