Требуется приложение ForceTouch для iOS
Есть ли способ написать "Необходимые возможности устройства", чтобы приложение работало только на iPhone 6 и выше (из-за необходимости принудительного нажатия)?
2 ответа
Обычно вы используете ключ UIRequiredDeviceCapabilities, для которого могут потребоваться определенные функции. Однако в настоящее время не похоже, что 3D Touch был добавлен.
На данный момент должно быть достаточно большого предупреждения, ожидая, пока Apple добавит 3D Touch, как то, что вам может потребоваться. В противном случае могут потребоваться некоторые функции, которые есть только в новых моделях iPhone, например микросхема на руку. Я не изучал это все же.
На странице яблок для документации вы можете увидеть доступные ключи для UIRequiredDeviceCapabilities, где 3D Touch, кажется, не присутствует. открыть https://developer.apple.com/library/ios/documentation/General/Reference/InfoPlistKeyReference/Articles/iPhoneOSKeys.html
Нет, в настоящее время это невозможно.
Вполне вероятно, что Apple представит новое значение для использования с ключом 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