zoukankan      html  css  js  c++  java
  • 【代码笔记】iOS-手机版本号,机型,操作系统版本,设备唯一标识符

    一,代码。

    RootViewController.m

    复制代码
    #import "ViewController.h"
    #import "sys/utsname.h"
    
    @interface ViewController ()
    
    @end
    
    @implementation ViewController
    
    - (void)viewDidLoad {
        [super viewDidLoad];
        // Do any additional setup after loading the view, typically from a nib.
        
        
        //版本号
        NSDictionary *infoDic = [[NSBundle mainBundle] infoDictionary];
        NSString *appVersion = [infoDic objectForKey:@"CFBundleVersion"];
        NSLog(@"---appVersion---%@",appVersion);
        
        //机型
        NSString *deviceStr=[NSString stringWithFormat:@"%@",[self deviceString]];
        NSLog(@"---deviceStr---%@--",deviceStr);
        
        //操作系统版本
        NSString* phoneVersion = [[UIDevice currentDevice] systemVersion];
        NSLog(@"---phoneVersion--%@",phoneVersion);
        
        //设备唯一标识
        NSString *uuid = [[UIDevice currentDevice].identifierForVendor UUIDString];
        NSLog(@"----uuid-%@",uuid);
        
    }
    //手机机型
    - (NSString*)deviceString
    {
        // 需要#import "sys/utsname.h"
        struct utsname systemInfo;
        uname(&systemInfo);
        NSString *deviceString = [NSString stringWithCString:systemInfo.machine encoding:NSUTF8StringEncoding];
        
        if ([deviceString isEqualToString:@"iPhone1,1"])    return @"iPhone 1G";
        if ([deviceString isEqualToString:@"iPhone1,2"])    return @"iPhone 3G";
        if ([deviceString isEqualToString:@"iPhone2,1"])    return @"iPhone 3GS";
        if ([deviceString isEqualToString:@"iPhone3,1"])    return @"iPhone 4";
        if ([deviceString isEqualToString:@"iPhone4,1"])    return @"iPhone 4S";
        if ([deviceString isEqualToString:@"iPhone5,1"])    return @"iPhone 5";
        if ([deviceString isEqualToString:@"iPhone5,2"])    return @"iPhone 5";
        if ([deviceString isEqualToString:@"iPhone5,3"])    return @"iPhone 5c";
        if ([deviceString isEqualToString:@"iPhone5,4"])    return @"iPhone 5c";
        if ([deviceString isEqualToString:@"iPhone6,1"])    return @"iPhone 5s";
        if ([deviceString isEqualToString:@"iPhone6,2"])    return @"iPhone 5s";
        if ([deviceString isEqualToString:@"iPhone7,2"])    return @"iPhone 6";
        if ([deviceString isEqualToString:@"iPhone7,1"])    return @"iPhone 6p";
        if ([deviceString isEqualToString:@"iPhone3,2"])    return @"Verizon iPhone 4";
        if ([deviceString isEqualToString:@"iPod1,1"])      return @"iPod Touch 1G";
        if ([deviceString isEqualToString:@"iPod2,1"])      return @"iPod Touch 2G";
        if ([deviceString isEqualToString:@"iPod3,1"])      return @"iPod Touch 3G";
        if ([deviceString isEqualToString:@"iPod4,1"])      return @"iPod Touch 4G";
        if ([deviceString isEqualToString:@"iPad1,1"])      return @"iPad";
        if ([deviceString isEqualToString:@"iPad2,1"])      return @"iPad 2 (WiFi)";
        if ([deviceString isEqualToString:@"iPad2,2"])      return @"iPad 2 (GSM)";
        if ([deviceString isEqualToString:@"iPad2,3"])      return @"iPad 2 (CDMA)";
        if ([deviceString isEqualToString:@"i386"])         return @"Simulator";
        if ([deviceString isEqualToString:@"x86_64"])       return @"Simulator";
        //    NSLog(@"NOTE: Unknown device type: %@", deviceString);
        return deviceString;
    }
    
    
    - (void)didReceiveMemoryWarning {
        [super didReceiveMemoryWarning];
        // Dispose of any resources that can be recreated.
    }
    
    @end
    复制代码

     

    二,输出。

    2015-10-23 12:01:43.093 手机版本号,机型,操作系统版本,设备唯一标识符[7151:176776] ---appVersion---1
    2015-10-23 12:01:43.093 手机版本号,机型,操作系统版本,设备唯一标识符[7151:176776] ---deviceStr---Simulator--
    2015-10-23 12:01:43.094 手机版本号,机型,操作系统版本,设备唯一标识符[7151:176776] ---phoneVersion--8.4
    2015-10-23 12:01:43.094 手机版本号,机型,操作系统版本,设备唯一标识符[7151:176776] ----uuid-36995AA5-DAC5-48E9-9C2E-088B1927EC6C
  • 相关阅读:
    Process 'command '/Users/lidaqiang/Library/Android/sdk/build-tools/27.0.3/aapt'' finished with non-zero exit value 1
    合同诈骗无罪裁判要旨、判决理由及评析意见
    互换不同种类毒品行为如何认定
    正当防卫指导性案例以及研析
    期待可能性理论的司法适用
    共同犯罪认定方法
    刑事案件鉴定意见常用质证要点
    张明楷的100个刑法案例
    刑事律师办案必备126部法律
    正当防卫裁判要旨16条
  • 原文地址:https://www.cnblogs.com/yang-guang-girl/p/7410080.html
Copyright © 2011-2022 走看看