從2013-5-1日開始蘋果就禁止對UUID的應用的通過了。所以我們需要用一些辦法替換,下面我就是用keychain的訪問替換掉UUID的。
那麼,關於Keychain的應用,Apple提供了一個叫GenericKeychain的例子程式,在這裡:http://download.csdn.net/detail/pearlhuzhu/5699667,其中封裝了一個簡化Keychain操作的類:KeychainItemWrapper,可以拿來直接使用。
1、首先應該匯入庫檔案:Security.framework 且需要把檔案KeychainItemWrapper.h和KeychainItemWrapper.m匯入到工程,並引用標頭檔:#import"KeychainItemWrapper.h"
2、代碼例子:
NSString *str =nil; KeychainItemWrapper *keychainItem = [[KeychainItemWrapper alloc] initWithIdentifier:@"UUID" accessGroup:@"com.xxx.xxx"]; NSString *uuidStr = [keychainItem objectForKey:(id)kSecValueData]; if (uuidStr.length == 0) { NSString *myUUIDStr = [[[UIDevice currentDevice] identifierForVendor] UUIDString]; [keychainItem setObject:myUUIDStr forKey:(id)kSecValueData]; str = myUUIDStr; } else{ str = [keychainItem objectForKey:(id)kSecValueData]; } NSLog(@"======%@",str); return str;
匯入Security.framework是因為KeychainItemWrapper檔案只是對Security一個封裝,更加利於我們的調用。