首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >SSKeychain删除帐户

SSKeychain删除帐户
EN

Stack Overflow用户
提问于 2013-11-27 13:21:04
回答 5查看 3.1K关注 0票数 1

我想从我的SSKeychain中删除一个帐户。我只得到删除密码的方法,但是帐户仍然在密钥链中。

是否有删除帐户或清除SSKeychain的方法?

EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2014-04-24 19:06:37

我用来删除一个帐户的是:

  1. 实例SSKeychainQuery对象。
  2. 设置我要删除的服务和帐户。
  3. 调用方法deleteItem:
代码语言:javascript
复制
//1  
SSKeychainQuery *query = [[SSKeychainQuery alloc] init];  
//2  
query.service = @"MyService";  
query.account = @"account2";  
//3  
[query deleteItem:nil];

如果你打电话来

代码语言:javascript
复制
NSLog(@"%@",[SSKeychain accountsForService:@"MyService"]);

这将打印名为"MyService“的服务的所有帐户,如果没有"MyService”,则为null。

票数 3
EN

Stack Overflow用户

发布于 2015-03-07 00:48:57

清除密钥链的最简单方法如下:

代码语言:javascript
复制
SSKeychainQuery *query = [[SSKeychainQuery alloc] init];

NSArray *accounts = [query fetchAll:nil];

for (id account in accounts) {

    SSKeychainQuery *query = [[SSKeychainQuery alloc] init];

    query.service = @"<INSERT SERVICE NAME>";
    query.account = [account valueForKey:@"acct"];

    [query deleteItem:nil];

}
票数 2
EN

Stack Overflow用户

发布于 2014-04-11 09:06:17

怎么样

代码语言:javascript
复制
+ (BOOL)deletePasswordForService:(NSString *)service account:(NSString *)account;

或删除所有帐户:

代码语言:javascript
复制
NSArray *accounts = [SSKeychain allAccounts];
for (int i = 0; i < accounts.count ; i++) {
    [SSKeychain deletePasswordForService:service account:[accounts objectAtIndex:i]];
}
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20243649

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档