与iCloud帐户

时间:2015-06-15 21:28:05

标签: icloud udid

我想使用代码来识别用户,而不会询问他们的电子邮件地址或其他敏感信息,这些信息也可能在她更换设备时跟随她。很久以前,我匆匆实施了以下代码:

NSString *strApplicationUUID=nil;
+(NSString*) sharedUdid{
    if (!strApplicationUUID){
         NSString *appName=[[[NSBundle mainBundle] infoDictionary] objectForKey:(NSString*)kCFBundleNameKey];
         strApplicationUUID = [SSKeychain passwordForService:appName account:@"incoding"];
        if (strApplicationUUID == nil) {
            strApplicationUUID=[[NSUserDefaults standardUserDefaults] objectForKey:@"udid"];
            if (!strApplicationUUID) strApplicationUUID=[[[UIDevice currentDevice] identifierForVendor] UUIDString];
            else strApplicationUUID  = [[NSUUID UUID] UUIDString];
           [SSKeychain setPassword:strApplicationUUID forService:appName account:@"incoding"];
        }

    }
    return strApplicationUUID;
}

我遗憾地发现为每个用户生成了所有唯一的标识符。所以我暂时切换到使用令牌,尽管它的长度和事实它链接到单个设备。有没有更好的解决方案?

1 个答案:

答案 0 :(得分:0)

我切换到使用CloudKit标识符。