2015-09-20 3 views
2

Записывает ли Apple какие-либо средства (например, ключ UIRequiredDeviceCapabilities), требующий 3D Touch на устройстве?iOS: требуется 3D Touch?

Изучение вещей, которые потребуют 3D-Touch. Не было бы лучшим опытом для запуска предупреждения о том, что пользователь их новое приложение не будет работать ...

Заранее спасибо.

ответ

0

UIRequiredDeviceCapabilities - единственный способ предотвратить установку пользователями приложений на устройстве, которое не поддерживает определенные возможности, ограничивая их установку из App Store.

На момент публикации этой статьи нет ключа для 3D Touch, поэтому ваш лучший вариант, вероятно, будет либо помещать его в описание приложения где-то очевидным, либо как предупреждение в приложении, как вы упомянули.

Надеемся, они добавят этот ключ в будущем, но я бы предположил, что предпочтительное использование 3D-прикосновением Apple в качестве дополнительной, но не необходимой функции в приложениях для iOS.

+1

Я уверен, что если ваше приложение просто не работает на всех устройствах, оно может быть загружено, после чего они отклонят его. Скажите мне, если я ошибаюсь, но разве это не часть рекомендаций по обзору, которые приложение работает на всех устройствах, которые могут ее загрузить. – Matthew

-1

Несмотря на отсутствие 3D-касания в UIRequiredDeviceCapabilities, iPhone 6S и 6S Plus являются единственными iPhone, у которых есть 2 ГБ ОЗУ, остальные - не более 1 ГБ. Поэтому просто запустите приложение только на iPhone и потребуйте 2 ГБ оперативной памяти.

+2

Как вы ограничиваете устройства с помощью 2GB Ram, используя UIRequiredDeviceCapabilities – Matthew

1

По моему мнению, вы даже не можете увидеть 3D Touch с ключом в UIRequiredDeviceCapabilities. Если это произойдет, оно должно быть в относительно длительное время, пока оно не будет считаться абсолютно необходимым.

Вы должны смотреть на 3D Touch как приятный, но не обязательный.

Если он включает определенные функции в вашем приложении, вам необходимо убедиться, что у вас есть резервный механизм для доступа к ним, когда возможности отсутствуют.

Кроме того, пользователи с 3D Прикоснитесь совместимое устройство может отключить эту функцию в:

Settings > General > Accessibility > 3D Touch

Таким образом, вы должны всегда код для обоих сценариев.

Подумайте об этом скорее как TouchID, а не как Metal. Хотя в настоящее время почти у всех есть устройство iOS, способное использовать сканирование отпечатков пальцев, люди все равно могут его отключить и использовать код доступа. Поэтому, если ваше приложение использует TouchID (например, большинство банковских приложений, Evernote, 1Password и т. Д.), Вам все равно нужен резерв.

Источник: Accessibility and Human Interface Guidelines for 3D Touch

Чтобы убедиться, что все пользователи могут получить доступ к функциям своего приложения, разветвляется код в зависимости от того, 3D сенсорного доступен. См. Проверка доступности 3D-Touch.

ПРИМЕЧАНИЕ

3D сенсорный доступна только на устройствах с сенсорным 3D и при включении. В iOS 9 по умолчанию включена функция 3D Touch. Пользователь может отключить 3D Touch в настройках> Общие> Специальные возможности> 3D Touch.

Когда доступно 3D Touch, воспользуйтесь его возможностями. Когда он недоступен, укажите альтернативы, например, прикосновением и удержанием.

-1

У меня также есть случай, когда я хочу показать вкладку меню только для устройств 3DTouch.

На данный момент, если устройство без 3DTouch (EG iphone5) обновляется до iOS9.0, по умолчанию будет включен 3DTouch. Когда вы читаете значение из traitCollection.forceTouchCapability, оно сообщает UIForceTouchCapabilityUnavailable. Если у вас есть устройство с 3DTouch (которое также будет использовать iOS9), значение будет UIForceTouchCapabilityAvailable.

Еще один вариант - использовать сторонний класс, чтобы узнать, какое устройство вы используете. Если это iPhone6S или iPhone6S +, верните true для поддержки3DTouch. Но вы должны вручную обновлять будущие устройства iOS.

Смежные вопросы