[英]Access Keychain elements in different view
我使用多視圖,選項卡式應用程序。 在FirstViewController中,我使用PresentViewController顯示LoginViewController。 在LoginViewController上,當用戶登錄我的應用程序時,我使用鑰匙串保存用戶名和密碼。
KeychainItemWrapper *keychainItem = [[KeychainItemWrapper alloc] initWithIdentifier:@"LoginInfos" accessGroup:nil];
[keychainItem setObject:_password forKey:(__bridge id)(kSecValueData)];
[keychainItem setObject:_pseudo forKey:(__bridge id)(kSecAttrAccount)];
現在,我希望能夠檢查FirstViewController鑰匙串中是否設置了某些內容,如果已設置,則顯然不會顯示LoginViewController。 但是,當我嘗試從FirstViewController訪問鑰匙串時,即使在執行#import'KeychainItemWrapper.h'之后,也會收到一條錯誤消息,提示我正在使用未聲明的標識符'keychainItem'。
NSString *mdp = [keychainItem objectForKey:(__bridge id)(kSecValueData)];
NSString *username = [keychainItem objectForKey:(__bridge id)(kSecAttrAccount)];
如何從另一個視圖訪問存儲在鑰匙串中的信息? 是否有更好的解決方案(例如,全局變量?)來檢查用戶是否已登錄?
聽起來您只需要在FirstViewController
初始化KeychainItemWrapper
的實例FirstViewController
。只需執行以下操作:
KeychainItemWrapper *keychainItem = [[KeychainItemWrapper alloc] initWithIdentifier:@"LoginInfos" accessGroup:nil];
再次嘗試從中檢索值之前。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.