【发布时间】:2012-09-10 23:22:12
【问题描述】:
我正在制作一个应用程序,告诉用户他们正在使用哪种 iOS 设备,然后告诉他们设备的功能。下面是一些示例代码:
case UIDevice1GiPhone: return UIDeviceBuiltInSpeaker | UIDeviceBuiltInCamera | UIDeviceBuiltInMicrophone | UIDeviceSupportsExternalMicrophone | UIDeviceSupportsTelephony | UIDeviceSupportsVibration;
case UIDevice3GiPhone: return UIDeviceSupportsGPS | UIDeviceBuiltInSpeaker | UIDeviceBuiltInCamera | UIDeviceBuiltInMicrophone | UIDeviceSupportsExternalMicrophone | UIDeviceSupportsTelephony | UIDeviceSupportsVibration;
case UIDeviceUnknowniPhone: return UIDeviceBuiltInSpeaker | UIDeviceBuiltInCamera | UIDeviceBuiltInMicrophone | UIDeviceSupportsExternalMicrophone | UIDeviceSupportsTelephony | UIDeviceSupportsVibration;
case UIDevice1GiPod: return 0;
case UIDevice2GiPod: return UIDeviceBuiltInSpeaker | UIDeviceBuiltInMicrophone | UIDeviceSupportsExternalMicrophone;
case UIDeviceUnknowniPod: return 0;
case UIDevice3GSiPhone: return UIDeviceSupportsGPS | UIDeviceBuiltInSpeaker | UIDeviceBuiltInCamera | UIDeviceBuiltInMicrophone | UIDeviceSupportsExternalMicrophone | UIDeviceSupportsTelephony | UIDeviceSupportsVibration;
这正是我正在寻找的东西。第一行表示第一代 iPhone 有一个内置扬声器、一个内置摄像头、它支持一个外部麦克风等。有人知道我在哪里可以获得所有设备的完整列表吗?我的清单不见了:iPhone 4、iPhone 4s、第 3 代 iPod、第 4 代 iPod 和各代 iPad。谢谢。
【问题讨论】:
-
避免引入以 UI 开头的自定义常量/定义/函数/类...
-
@matt - 我认为你误解了 OP;他在问如何获取运行应用程序的 iDevice 的属性。例如,如果我下载这个应用程序,应用程序会告诉我是否有内置扬声器、摄像头等。
-
@qegal 我认为 你 误解了 OP。看他的代码。他没有对设备进行自省;他正在编写模型能力的百科全书,类似于MacTracker。问题是他不知道模型的能力。
标签: iphone ios ipad platform capability