应用平台规范

Posted

技术标签:

【中文标题】应用平台规范【英文标题】:Application Platform Specification 【发布时间】:2011-10-25 12:36:09 【问题描述】:

我正在为 iphone 和 ipod 设计一个应用程序,客户希望 iphone 和 ipod 的一些 UI 规范有所不同,所以我决定为 iphone 和 ipod 创建不同的 XIB 文件,就像在 iphone 和 ipod 的通用应用程序中一样,但是问题是我无法在运行时区分 iphone 和 ipod 有没有办法在运行时检查平台以便在运行时加载不同的 Nib 文件 如果有任何代码或教程,请引导我到链接 提前致谢

【问题讨论】:

【参考方案1】:

[[UIDevice currentDevice] model] 看起来是此信息的正确来源。您可以检查它是否包含 iPod Touch 或 iPhone 或.....

【讨论】:

【参考方案2】:

检查 UIDevice 类的模型属性

http://developer.apple.com/library/ios/#documentation/uikit/reference/UIDevice_Class/Reference/UIDevice.html

但是,如果您打开该字符串,请注意模拟器显示为单独的设备。

这个:

NSString* model = [[UIDevice currentDevice] model];
NSLog(@"model: %@", model);

输出:

2011-10-25 08:44:30.794 Craplet[921:b303] model: iPhone Simulator

【讨论】:

【参考方案3】:

我想这已经被问过好几次了。)

NSString *dtype = [UIDevice currentDevice].model;

if([dtype isEqualToString:@"iPhone"])

   // iphone 

模型字符串的可能示例是@“iPhone”和@“iPod touch”

【讨论】:

代码运行良好.. 它只是另一个模型字符串。这是有道理的,因为模拟器不是 iphone。 对,但是如果您只是根据上面的 isEqual 严格检查来切换 iPhone“行为”,那么当您在模拟器下运行它时,正确的行为将不适用。从检查开始可能会更好......

以上是关于应用平台规范的主要内容,如果未能解决你的问题,请参考以下文章

智能驾驶功能软件平台设计规范第三部分:预测功能服务接口

智能驾驶功能软件平台设计规范第三部分:预测功能服务接口

智能驾驶功能软件平台设计规范 第一部分:系统架构

iOS 安全规范指南之对请求参数进行签名请求参数按照ASCII码从小到大排序拼接加密(采用递归的方式进行实现)应用案例:条码支付综合前置平台申请退款

JAVA消息服务JMS规范及原理详解

iOS 安全规范指南之对请求参数进行签名请求参数按照ASCII码从小到大排序拼接加密(采用递归的方式进行实现)应用案例:条码支付综合前置平台申请退款