开发者社区> 贱见> 正文
阿里云
为了无法计算的价值
打开APP
阿里云APP内打开

UIDevice获取设备数据以及如何获取应用信息

简介: <h1 id="codeintro" style="margin:15px 0px 0px; padding:0px; color:rgb(54,46,43); line-height:26px; border:0px; width:740px; font-size:13px; font-weight:normal; font-family:'Helvetica Neue','Luxi S
+关注继续查看

在IOS的APP的应用开发的过程中,有时候需要自动收集用户设备、系统信息、应用信息等等。 
比如在在app中加入收集用户反馈功能,不仅用户的反馈能够提交到服务器,包括上述信息同时也自动提交到服务器。对用户反馈bug特别有用。


下面是他们的获取方法:
  1. //设备相关信息的获取  
  2.     NSString *strName = [[UIDevice currentDevice] name];  
  3.     NSLog(@"设备名称:%@", strName);  
  4.       
  5.     NSString *strId = [[UIDevice currentDevice] uniqueIdentifier];  
  6.     NSLog(@"设备唯一标识:%@", strId);  
  7.       
  8.     NSString *strSysName = [[UIDevice currentDevice] systemName];  
  9.     NSLog(@"系统名称:%@", strSysName);  
  10.       
  11.     NSString *strSysVersion = [[UIDevice currentDevice] systemVersion];  
  12.     NSLog(@"系统版本号:%@", strSysVersion);  
  13.       
  14.     NSString *strModel = [[UIDevice currentDevice] model];  
  15.     NSLog(@"设备模式:%@", strModel);  
  16.       
  17.     NSString *strLocModel = [[UIDevice currentDevice] localizedModel];  
  18.     NSLog(@"本地设备模式:%@", strLocModel);  
  19.       
  20.     float version = [[[UIDevice currentDevice] systemVersion] floatValue];  
  21.     NSLog(@"版本号:%f\n", version);  
  22.       
  23.     //app应用相关信息的获取  
  24.     NSDictionary *dicInfo = [[NSBundle mainBundle] infoDictionary];  
  25. //    CFShow(dicInfo);  
  26.       
  27.     NSString *strAppName = [dicInfo objectForKey:@"CFBundleDisplayName"];  
  28.     NSLog(@"App应用名称:%@", strAppName);  
  29.       
  30.     NSString *strAppVersion = [dicInfo objectForKey:@"CFBundleShortVersionString"];  
  31.     NSLog(@"App应用版本:%@", strAppVersion);  
  32.       
  33.     NSString *strAppBuild = [dicInfo objectForKey:@"CFBundleVersion"];  
  34.     NSLog(@"App应用Build版本:%@", strAppBuild);  

但是,在IOS5之后,原来获取IPhone的Device Id的接口:[[UIDevice currentDeviceuniqueIdentifier] 被废弃了。
uinqueIdentifier在UIDevice.h中的定义如下:
  1. @property(nonatomic,readonly,retain) NSString    *uniqueIdentifier  NS_DEPRECATED_IOS(2_0, 5_0);  
  2. // a string unique to each device based on various hardware info.  
意思是iOS2.0以上及iOS5.0以下的系统可用,但不建议使用.Apple有可能在ios5.0之后删除该函数. 
经过测试,未越狱的iPhone,系统版本为5.0.1,依然可以获取UDID.。
关于他的代替方法可以参考

http://stackoverflow.com/questions/6993325/uidevice-uniqueidentifier-deprecated-what-to-do-now

http://www.cocoachina.com/bbs/read.php?tid=92404

http://www.cnblogs.com/wgw8299/articles/2417579.html

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
设备端和服务端检测设备是否在线的方法
使用物联网时,有时设备端和服务端都需要检测设备是否在线。
0 0
阿里云物联网平台设备端响应物模型属性更新
在使用云端API SetDeviceProperty、iot studio设置设备属性、物联网平台控制台在线调试功能时,会出现物模型属性没有更新的情况。 以上功能中都是在调用SetDeviceProperty接口去更新物模型属性。 因为云端下发属性设置命令和设备收到并执行该命令是异步的,所以调用该接口时,返回的成功结果只表示云端下发属性设置的请求成功,不能保证设备端收到并执行了该请求。需设备端SDK成功响应云端设置设备属性值的请求,设备属性值才能真正设置成功。
0 0
什么是数据、信息、知识和智慧?
2006年1月份左右,我曾经撰写了一篇涉及数据,信息,知识和智慧的文章,在科学网看到倪鹏云老师也在探讨这个问题,于是我将原文一些核心的内容整理出来形成这篇文章与大家进行探讨。 在知识管理中,有一个经典的知识阶层图,本文将以这个图作为阐述的顺序依据。
1505 0
UWP 应用获取各类系统、用户信息 (1) - 设备和系统的基本信息、应用包信息、用户数据账户信息和用户账户信息
原文:UWP 应用获取各类系统、用户信息 (1) - 设备和系统的基本信息、应用包信息、用户数据账户信息和用户账户信息 应用开发中,开发者时常需要获取一些系统、用户信息用于数据统计遥测、问题反馈、用户识别等功能。
1225 0
UWP 应用获取各类系统、用户信息 (2) - 商店授权信息、零售演示模式信息、广告 ID、EAS 设备信息、硬件识别信息、移动网络信息
原文:UWP 应用获取各类系统、用户信息 (2) - 商店授权信息、零售演示模式信息、广告 ID、EAS 设备信息、硬件识别信息、移动网络信息 应用开发中,开发者时常需要获取一些系统、用户信息用于数据统计遥测、问题反馈、用户识别等功能。
1137 0
【技术贴】最新唯一解决:未能创建视频预览,请检查设备连接,确定没有其他应用程序或用户使用该设备
【技术贴】最新唯一解决:摄像头未能创建视频预览,请检查设备连接,确定没有其他应用程序或用户使用该设备。     搞了两个月都没有解决,今天给解决了!!!!哇哈哈哈哈   1.百度一下【终极解码2011】,下载进行安装,立即可以解决!!!最终确定就是暴风影音的问题,它占用了摄像头的影像编码。
792 0
+关注
文章
问答
文章排行榜
最热
最新
相关电子书
更多
内容安全检测与管控
立即下载
阿里云物联网平台属性,事件,服务详解
立即下载
低代码开发师(初级)实战教程
立即下载