2015-09-27 47 views
7

有没有办法编写应用程序的“需要的设备功能”,使应用程序只运行iPhone 6s或更高版本(由于需要强制触摸)?需要ForceTouch iOS App

+0

大概不会。支持最新设备上的功能要好得多,但仍然有一款应用程序适用于具有相同操作系统版本的其他设备。 – Abizern

+2

我没有看到投票的理由。也许有一款应用程序可以非常巧妙地使用Force Touch,因此无法在较旧的设备上实现它,例如游戏。 – fabian789

+0

@ fabian789我同意。这似乎是苹果没有充分考虑的东西,这几乎不是OP的错。 – matt

回答

2

您通常使用UIRequiredDeviceCapabilities键,该键可能需要某些功能才能显示。但是目前它似乎没有添加3D Touch。

现在,在等待苹果添加3D触摸作为您可能需要的东西时,现在只需要一个大警告即可。否则,可能只有新款iPhone手机具有的某些功能,例如可能需要的手臂芯片。我还没有研究过这个。

在苹果页面的文档中,您可以看到UIRequiredDeviceCapabilities的可用键,其中3D Touch似乎不存在。 open https://developer.apple.com/library/ios/documentation/General/Reference/InfoPlistKeyReference/Articles/iPhoneOSKeys.html#//apple_ref/doc/uid/TP40009252-SW3

+0

怎样指定设备中的RAM数量? iPhone 6s有2GB,iPhone 6只有1GB。 –

+0

在我链接的页面上有一段说: _此密钥在iOS 9.0及更高版本支持3D Touch的设备支持._ 可能需要其中之一才能做到这一点? – Froziph

+0

但是,这不是快速行动项目? –

2

不,在这个时候是不可能的。

苹果很可能会引入一个新的值来使用UIRequiredDeviceCapabilities键。

直到那个时候,你所能做的最好的事情就是需要一个(arm64,metal或opengles-3),以及诸如电话或短信之类的东西(直到iPad获得3D Touch)。这至少会将您的应用限制在iPhone 5S之上。

并在应用说明中发布通知,表明您的设备需要3D Touch。

留意该文件对所有可能的设备能力值: https://developer.apple.com/library/ios/documentation/DeviceInformation/Reference/iOSDeviceCompatibility/DeviceCompatibilityMatrix/DeviceCompatibilityMatrix.html

而且,这很方便: http://28byteslater.com/ios-compatibility/?exclude=&require=22,7,19,26#chart