ios 设备唯一标示

1.1很多时候,我们需要拿到手机唯一识别号来进行网络请求处理风控,下面介绍一个拿到手机唯一识别号的方法

1.1.2 首先将三方库SAMKeychain导入到项目中,然后新建工具类,提供一个类方法

+ (NSString *) generateUUID {
    NSString *uuid = [WXTool getDeviceId];
    if (![NSString isNullOrEmpty:uuid]) {
        return uuid;
    }
    
    NSError *error;
    SAMKeychainQuery *query = [[SAMKeychainQuery alloc] init];
    uuid = [[NSUUID UUID] UUIDString];
    // New item
    query = [[SAMKeychainQuery alloc] init];
    query.password = uuid;
    query.service = kSSKeychainServiceName;
    query.account = kSSKeychainAccountName;
    query.label = kSSKeychainLabel;
    
    if (![query save:&error]) {
        DLog(@"Unable to save item: %@", error);
    }
    return uuid;
}

+ (NSString *)getDeviceId {
    NSError *error;
    // Look up
    SAMKeychainQuery *query = [[SAMKeychainQuery alloc] init];
    query.service = kSSKeychainServiceName;
    query.account = kSSKeychainAccountName;
    query.password = nil;
    
    [query fetch:&error];
    if (error) {
        DLog(@"Network -- Unable to fetch keychain item: %@", error);
    }
    NSString *password = query.password;
    if ([NSString isNullOrEmpty:password]) {
        password = @"";
    }
    return password;
}

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 在开发过程中,我们经常会被要求获取每个设备的唯一标示,以便后台做相应的处理。我们来看看有哪些方法来获取设备的唯一标...
    西木柚子阅读 57,852评论 53 140
  • 在开发过程中,我们经常会被要求获取每个设备的唯一标示,以便后台做相应的处理。我们来看看有哪些方法来获取设备的唯一标...
    JinkeyAI阅读 19,494评论 2 26
  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 176,015评论 25 709
  • 每个家庭对待孩子的方式都各不相同,怎么衡量教养方式的好坏呢?什么样的教养方式最有利于孩子成长呢? 看图太复杂。 简...
    雨苗儿阅读 3,532评论 0 0
  • 2017年 春日过得比秋天还要萧瑟 一程程的奔走 一次次的失望 穿梭于人流中 迷失不知归途 ……
    雪域之城阅读 1,504评论 0 0

友情链接更多精彩内容