iOS的SDK中提供了UIDevice。NSBundle,NSLocale。

UIDevice

       UIDevice提供了多种属性、类函数及状态通知,帮助我们全方位了解设备状况。

从检測电池电量到定位设备与临近感应。UIDevice所做的工作就是为应用程序提供用户及设备的一些信息。UIDevice类还能够收集关于设备的各种详细细节。比如机型及iOS版本号等。

当中大部分属性都对开发工作具有积极的辅助作用。

以下的代码简单的使用UIDevice获取手机属性。

  1. //设备相关信息的获取  
  2.  NSString *strName = [[UIDevice currentDevice] name];  
  3.  NSLog(@"设备名称:%@", strName);//e.g. "My iPhone"  
  4.    
  5.  NSString *strId = [[UIDevice currentDevice] uniqueIdentifier];  
  6.  NSLog(@"设备唯一标识:%@", strId);//UUID,5.0后不可用  
  7.    
  8.  NSString *strSysName = [[UIDevice currentDevice] systemName];  
  9.  NSLog(@"系统名称:%@", strSysName);// e.g. @"iOS"  
  10.    
  11.  NSString *strSysVersion = [[UIDevice currentDevice] systemVersion];  
  12.  NSLog(@"系统版本号号:%@", strSysVersion);// e.g. @"4.0"  
  13.    
  14.  NSString *strModel = [[UIDevice currentDevice] model];  
  15.  NSLog(@"设备模式:%@", strModel);// e.g. @"iPhone", @"iPod touch"  
  16.    
  17.  NSString *strLocModel = [[UIDevice currentDevice] localizedModel];  
  18.  NSLog(@"本地设备模式:%@", strLocModel);// localized version of model  

NSBundle

   
bundle是一个文件夹,当中包括了程序会使用到的资源. 这些资源包括了如图像,声音,编译好的代码,nib文件(用户也会把bundle称为plug-in). 相应bundle,cocoa提供了类NSBundle.一个应用程序看上去和其它文件没有什么差别. 可是实际上它是一个包括了nib文件,编译代码,以及其它资源的文件夹. 我们把这个文件夹叫做程序的main bundle。通过这个路径能够获取到应用的信息,比如应用名、版本号号等。

  1. //app应用相关信息的获取  
  2.     NSDictionary *dicInfo = [[NSBundle mainBundle] infoDictionary];  
  3.     //    CFShow(dicInfo);  
  4.       
  5.     NSString *strAppName = [dicInfo objectForKey:@"CFBundleDisplayName"];  
  6.     NSLog(@"App应用名称:%@", strAppName);  
  7.       
  8.     NSString *strAppVersion = [dicInfo objectForKey:@"CFBundleShortVersionString"];  
  9.     NSLog(@"App应用版本号:%@", strAppVersion);  
  10.       
  11.     NSString *strAppBuild = [dicInfo objectForKey:@"CFBundleVersion"];  
  12.     NSLog(@"App应用Build版本号:%@", strAppBuild);  

NSLocale

     NSLocale能够获取用户的本地化信息设置。比如货币类型。国家。语言,数字,日期格式的格式化。提供正确的地理位置显示等等。以下的代码获取机器当前语言和国家代码。

  1. //Getting the User’s Language  
  2.    NSArray *languageArray = [NSLocale preferredLanguages];  
  3.    NSString *language = [languageArray objectAtIndex:0];  
  4.    NSLog(@"语言:%@", language);//en  
  5.      
  6.    NSLocale *locale = [NSLocale currentLocale];  
  7.    NSString *country = [locale localeIdentifier];  
  8.    NSLog(@"国家:%@", country); //en_US  
  9.     

ios 获取手机信息(UIDevice、NSBundle、NSLocale)的更多相关文章

  1. iOS开发 获取手机信息(UIDevice,NSBundle,NSlocale)

    在开发中,需要获取当前设备的一些信息,可以通过UIDevice,NSbundle,NSlocale获取. UIDevice UIDevice 提供了多种属性,类函数及状态通知,可以检测手机电量,定位, ...

  2. iOS 整理笔记 获取手机信息(UIDevice、NSBundle、NSLocale)

    /*    iOS的APP的应用开发的过程中,有时为了bug跟踪或者获取用反馈的需要自动收集用户设备.系统信息.应用信息等等,这些信息方便开发者诊断问题,当然这些信息是用户的非隐私信息,是通过开发ap ...

  3. ios 获取手机相关的信息

    获取手机信息      应用程序的名称和版本号等信息都保存在mainBundle的一个字典中,用下面代码可以取出来 //获取版本号 NSDictionary *infoDict = [[NSBundl ...

  4. 【风马一族_Android】Android 从命令行界面获取手机信息

    Android 从命令行界面获取手机信息 1: cmd 打开命令行界面 2:adb devices   获取与电脑相连的设备,例如:模拟器.真机(手机) (右击“标记”,选择设备名称,点击“Ctrl+ ...

  5. Android 获取手机信息,设置权限,申请权限,查询联系人,获取手机定位信息

    Android 获取手机信息,设置权限,申请权限,查询联系人,获取手机定位信息 本文目录: 获取手机信息 设置权限 申请权限 查询联系人 获取手机定位信息 调用高德地图,设置显示2个坐标点的位置,以及 ...

  6. android 获取手机信息工具类

    package com.yqy.yqy_listviewheadview; import android.content.Context; import android.telephony.Telep ...

  7. 微信小程序开发(六)获取手机信息

    // succ.js var app = getApp() Page({ data: { mobileModel: '', // 手机型号 mobileePixelRatio: '', // 手机像素 ...

  8. iOS学习笔记(十三)——获取手机信息(UIDevice、NSBundle、NSLocale)

    iOS的APP的应用开发的过程中,有时为了bug跟踪或者获取用反馈的需要自动收集用户设备.系统信息.应用信息等等,这些信息方便开发者诊断问题,当然这些信息是用户的非隐私信息,是通过开发api可以获取到 ...

  9. iOS获取手机相关信息

    iOS具体的设备型号: #include <sys/types.h> #include <sys/sysctl.h> - (void)test { //手机型号. size_t ...

随机推荐

  1. linux和unix的对照

    在之前的博客中说到,linux是一个单一内核的操作系统,但它与传统的单一内核UNIX操作系统不同. 在普通单一内核系统中,全部内核代码都是被静态编译和链接的. 而在linux中,能够动态的装入和卸载内 ...

  2. Android GridView LruCache

    照片墙这种功能现在应该算是挺常见了,在很多应用中你都可以经常看到照片墙的身影.它的设计思路其实也非常简单,用一个GridView控件当作“墙”,然后随着GridView的滚动将一张张照片贴在“墙”上, ...

  3. 直播聊天室,点亮效果,jquery实现

    1.css #like_area img{ width: 30px; height: 30px; position: absolute; bottom: 100px; left: 60%; margi ...

  4. 25.Detours劫持技术

    Detours可以用来实现劫持,他是微软亚洲研究院开发出来的工具,要实现它首先需要安装Detours. 安装地址链接:https://pan.baidu.com/s/1eTolVZs 密码:uy8x ...

  5. UltraEdit Companion Utility

    UltraEdit Companion Utility 配色组件 http://www.danielwmoore.com/extras/index.php?action=downloads;sa=vi ...

  6. 分享一下vue ui的分页的用法

    var newToAddLeave = function(){ var goIndex = { template:` <i-table :columns="overTimeList.c ...

  7. java httpRequest和Response

    Web服务器收到客户端的http请求,会针对每一次请求,分别创建一个用于代表请求的request对象.和代表响应的response对象.request和response对象即然代表请求和响应,那我们要 ...

  8. sql 向上取整 向下取整 四舍五入的实例;

    SELECT CEILING(23.5/4)'向上取整' ---6 :SELECT FLOOR(23.5/4)'向下取整' ---5 :SELECT ROUND(23.5/4,1)'四舍五入' --5 ...

  9. linux ifconfig找不到

    提示命令不存在 原因: 系统默认的环境变量设置不对 而,ifconfig恰恰就在/sbin里面. 下cat /etc/profile, 可以发现没有关于/sbin的环境变量. Linux,习惯用ged ...

  10. [ES2017] Iterate over properties of an object with ES2017 Object.entries()

    The Object.entries() function is an addition to the ECMAscript scpec in Es2017. This allows us to it ...