模拟器,真机区别

[cpp]  view plain copy
  1. if(UI_USER_INTERFACE_IDIOM() ==UIUserInterfaceIdiomPad)  
  2. {  
  3. //iPad  
  4. }  
  5. else  
  6. {  
  7. //iPhone or iTouch  
  8. }  


请注意,如果你在创建项目的时候只支持一种设备类型,上面的语句将始终返回选定ios设备类型,如项目只支持iPhone,即使在iPad上运行,前述的代码依然返回iPhone设备类型。


执行环境

我们可以从 UIDevice 的属性 model 得到在现在执行的环境。

[cpp]  view plain copy
  1. NSString *modelname = [[UIDevice currentDevice]model];   
  2. if ([modelname isEqualToString:@"iPhone"]) {   
  3. // iPhone  
  4. }   
  5. if ([modelname isEqualToString:@"IPod Touch"]) {   
  6. // iPod touch}   
  7. if ([modelname isEqualToString:@"iPhone Simulator"]) {   
  8. // iPhone Simulator  
  9. }  


或者也可以这样:

[cpp]  view plain copy
  1. #import <TargetConditionals.h>   
  2. #if TARGET_OS_IPHONE   
  3. // iPhone Device  
  4. #endif   
  5. #if TARGET_IPHONE_SIMULATOR   
  6. // iPhone Simulator  
  7. #endif   
  8. #if !TARGET_IPHONE_SIMULATOR   
  9. // iPhone Device  
  10. #endif  


iPhone 机器版本的区分

可以通过 uname 函数取得当前机器的版本。

[cpp]  view plain copy
  1. struct utsname u;   
  2. uname(&u);   
  3. NSString *machine = [NSStringstringWithCString:u.machine];   
  4. if ([machine isEqualToString:@"iPhone1,1"]) {   
  5. // iPhone 1G  
  6. }  
  7. if ([machine isEqualToString:@"iPhone1,2"]) {   
  8. // iPhone 3G  
  9. }   
  10. if ([machine isEqualToString:@"iPhone2,1"]) {   
  11. // iPhone 3GS  
  12. }   
  13. if ([machine isEqualToString:@"iPod1,1"]) {   
  14. // iPod touch 1G  
  15. }   
  16. if ([machine isEqualToString:@"iPod2,1"]) {  
  17.  // iPod touch 2G  
  18. }  
  19.  if([machine isEqualToString:@"iPod3,1"]) {   
  20. // iPod touch Late2009  
  21. }  

iPhone OS 版本区分

可以使用 UIDevice 的属性 systemVersion 来得到。

[cpp]  view plain copy
  1.    
  2.  NSString *osversion = [UIDevice currentDevice].systemVersion;   
  3. if ([osversion isEqualToString:@"2.1"]) {   
  4. // iPhone  
  5. }   
  6. if ([osversion isEqualToString:@"2.2.1"])   
  7.   
  8. {   
  9. // iPod touch  
  10. }   
  11. if ([osversion isEqualToString:@"3.0"]) {   
  12. // iPhone Simulator  
  13. }  
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值