0

我正在为我的 iOS 应用程序构建一个操作扩展。但是,我在处理用户数据时遇到了一些真正的困难。在我的应用程序中,我存储用户的用户名和密码,如下所示:

 KeychainItemWrapper *keychainItem = [[KeychainItemWrapper alloc] initWithIdentifier:@"testapp" accessGroup:nil];

[keychainItem setObject:[self.txtUsername text] forKey:(__bridge id)(kSecAttrAccount)];
[keychainItem setObject:[self.txtPassword text] forKey:(__bridge id)(kSecValueData)];

NSString *valueToSave = @"Remembermebycredentials";
[[NSUserDefaults standardUserDefaults] setObject:valueToSave forKey:@"RememberMe"];
[[NSUserDefaults standardUserDefaults] synchronize];

如何从我的操作扩展中访问它?我尝试使用相同的标识符检索它并创建一个共享容器,但这不起作用......

4

1 回答 1

0

在您创建访问组之前,您无法从您的应用程序访问保存的数据。您需要为访问组配置应用程序,因为您的扩展程序是不同的进程,所以它不能直接用于您的扩展程序。

我建议遵循教程和 WWDC 会议

为 iOS 和 OS X 创建应用扩展,第 1 部分

为 iOS 和 OS X 创建应用扩展,第 2 部分

于 2014-12-09T12:27:08.237 回答