iPhone 通过UIRequiredDeviceCapabilities指定程序适用于哪些设备

iOS App适配与info.plist
本文介绍如何通过info.plist文件来指定iOS应用程序所需的设备功能,如Wi-Fi、电话功能等,以确保程序能在合适的设备上正常运行。

以前在itunes中查看某个应用时,会有说明信息,表明程序适用于ios 1.0,2.0,3.0什么的。

上周末将Key Manager上传到app store时,一直有个疑问,就是没有发现填写程序适用于哪些设备的地方。

虽有疑问,但程序还是上传成功了,只是心里有个担心,怕程序不能通过审核。

但是前天发现,程序审核通过了,切实高兴了一番。

今天闲来无事,决定查下为什么现在不需要填写程序的适用设备了。

呵呵,不卖关子了,如下:

当提交程序到app store时,3.0及更高版本的应用程序不再直接说明使用哪种设备,而是使用info.plist文件来确定需要哪些设备功能。iTunes通过这个所需功能的列表来确定一个应用程序能否下载到一个指定的设备并在该设备上正常运行。

例如,我在info.plist中设置如下,那么只有居右wifi、电话功能和麦克风(内置的或附件所带的麦克风功能)的ios设备才能运行该程序。

除了wifi和telephony项,还有很多项代表各种设备功能,如下:

sms 应用程序需要Messages应用程序或者使用sms://URL
still-camera 应用程序需要使用照相机模式作为图像选取器的控制器
auto-focus-camera 应用程序需要使用更多的聚焦功能以进行微距摄影或者拍摄特别清晰的图像以进行图像内数据检测
video-camera 应用程序需要使用视频模式作为图像选取器的控制器
accelerometer 应用程序需要特定于加速计的反馈而不知是简单的UIViewController方向事件
location-services 应用程序需要使用Core Location
gps 应用程序需要使用Core Location并需要更加精确的gps定位
magnetometer 应用程序需要使用Core Location并需要与前进方向相关的事件,即行进的方向(通过磁力计获得)
peer-peer 应用程序需要使用GameKit通过蓝牙(3.1或更高版本)进行对等连接
opengles-1 应用程序需要OpenGL ES 1.1
opengles-2 应用程序需要OpenGL ES 2.0
armv-6 应用程序仅针对armv6指令集(3.1或更高版本)编译
armv-7 应用程序仅针对armv7指令集(3.1或更高版本)编译

转载于:https://my.oschina.net/sunqichao/blog/152540

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值