簡體   English   中英

在不同視圖中訪問鑰匙串元素

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM