Подтвердить что ты не робот

Запретить запуск приложения iPhone на iPad

Я отправляю два бинарных файла; один для iPhone/iTouch, а другой для iPad. Это одно и то же приложение.

Будет ли Apple гарантировать, что пользователь никогда не получит iPhone-версию приложения на iPad? Если ДА, то мне не о чем беспокоиться, но если нет, то у меня есть проблема.

Причина, по которой я спрашиваю, - это приложение iPhone просто не работает правильно на iPad, потому что сервер знает его iPad и будет поставлять iPad HD-контент, и iPhone не сможет справиться с этим. Я бы предпочел не взломать мое приложение, чтобы отправить сервер поддельным типом устройства, если вы используете приложение iPhone на iPad, чтобы получить правильные ресурсы.

Предложения?

4b9b3361

Ответ 1

Я долго искал это, потому что не мог предотвратить загрузку приложения для iPhone на iPad. Немного поискал, чтобы понять, почему это происходит, следовал инструкциям @hotpaw2 и нашел это в официальных правилах Apple Store:

Apple Store official rules excerpt - developer.apple.com

ОБНОВИТЬ:

2.4.1 Чтобы люди могли получить максимальную отдачу от вашего приложения, приложения iPhone должны работать на iPad, когда это возможно. Мы рекомендуем вам создать универсальные приложения, чтобы клиенты могли использовать их на всех своих устройствах. Узнайте больше о приложениях Universal.

https://developer.apple.com/app-store/review/guidelines/

Ответ 2

Правила SDK и/или магазина приложений запрещают запуск приложения iPhone на iPad в режиме 1-кратного или 2-кратного увеличения, если в списке приложений нет других требований. Известно, что проверка приложений Apple проверяет отправку приложений только для iPhone (если нет других требований) на iPad и отклоняет приложение, если оно не работает должным образом.

Другие требования (перечисленные в разделе UIRequiredDeviceCapabilities в списке приложений) могут включать ваше приложение, которому требуются телефонные возможности (или аптечка и т.д.), Которые могут временно вам помочь, но все же не помешают запуску приложения на каком-то гипотетическом будущем продукте iPad, который будет включает в себя возможности телефонии (и/или аптечку и т.д.).

Ответ 3

Собственно, вы можете.
Добавьте telephony в UIRequiredDeviceCapabilities в свой файл plist.

Но я действительно не рекомендую его, и, возможно, вы можете отказаться от него из-за бесплатного использования этого свойства.

Думаю, вам стоит разобраться, что на iPad есть версии iPad и версии iPhone, а второй - как iPhone.
Также не стоит забывать, что сетчатки iPads будут использовать масштабированные приложения при разрешении сетчатки, в то время как ни одна сетчатка не использует стандартное разрешение. И это поведение может изменяться с помощью трюков джейлбрейка, таких как RetinaPad и FullForce.

Ответ 4

В настройках plist добавьте Application requires iPhone environment и установите значение boolean на YES