Как отключить собственное разрешение iPhone 6?

У меня есть несколько игр, сделанных с помощью Cocos2d-iphone. Все они являются старыми проектами, созданными с помощью Xcode 4 или 5. Все игры отлично масштабируются на новых iPhone 6 и 6 Plus, кроме одной, которая, кажется, избегает режима масштабирования и работает на родном разрешении iPhone 6/6 Plus. Проект не содержит изображений запуска с разрешениями, которые, по-видимому, отключают режим масштабирования, как объяснено здесь

Есть ли что-нибудь еще, что разблокирует родные разрешения? Я хочу, чтобы игра работала в режиме масштабирования, пока ресурсы HD не будут готовы для новых разрешений.

Я сделал новый пустой проект, в котором нет никаких активов, и он работает с собственными размерами экрана.


person Dunbar    schedule 17.09.2014    source источник
comment
Единственный способ, с помощью которого приложение запускается с исходными размерами iPhone6/6+, — это добавление соответствующих изображений запуска или, для iOS 8, файла экрана запуска.   -  person rmaddy    schedule 17.09.2014
comment
Также, если вы добавите Launch Screen File. Проблема в том, что я не использую ни одну из этих настроек, а родное разрешение разблокировано. Отличие этого проекта от тех, которые работают в режиме масштабирования, заключается в том, что у меня есть заставка для Retina iPad с именем [email protected]. Также старые проекты с Cocos2d-iphone 1.x, а новый с 2.x. Еще одно отличие состоит в том, что старые проекты представлены и живут в AppStore.   -  person Dunbar    schedule 18.09.2014


Ответы (2)


<сильный>1. Есть ли что-нибудь еще, что разблокирует исходное разрешение?

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

2. Я создал новый пустой проект, в котором нет ресурсов, и он работает со стандартными размерами экрана.

Если вы создаете проект из XCode 6, наивное разрешение будет автоматически включено, даже если изображения запуска не добавлены. Я только что создал новый пример проекта из Xcode 5.1.1, а затем запустил его на Xcode 6, и наивное разрешение не было включено, а представления были масштабированы, чтобы соответствовать экрану.

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

Исправление

Основываясь на комментариях, я исправляю свой ответ для проектов, созданных в XCode 6, вы можете удалить Launch Screen File, а также не добавлять какие-либо изображения запуска для iPhone 6/6+. Приложение не будет работать в родном разрешении iPhone 6/6+.

Итак, для iOS8 у вас могут быть либо изображения запуска для iPhone 6 и 6 Plus, либо Launch Screen File

person Bhumit Mehta    schedule 17.09.2014
comment
Я не могу это подтвердить. Я попытался удалить файл экрана запуска в новом проекте, и размер экрана был 320x480. В моем старом проекте у меня нет ни файла экрана запуска, ни изображений запуска. Я пробовал много вещей, но ничего не получалось! - person Dunbar; 17.09.2014
comment
Вы имеете в виду, что вы создали новый проект из XCode 5.x, и все еще было разблокировано наивное разрешение? Помните, что создание проекта из XCode 6 по умолчанию разблокирует наивное разрешение. - person Bhumit Mehta; 17.09.2014
comment
Извините, но этот ответ в основном неверен (или, по крайней мере, вводит в заблуждение). Создайте новый проект в Xcode 6. Удалите файл экрана запуска по умолчанию и не добавляйте никаких изображений запуска, специфичных для iPhone 6/6+. Приложение не будет работать в исходном разрешении iPhone 6/6+. Единственный способ для запуска любого приложения с исходным разрешением – предоставить либо надлежащие изображения запуска, либо, для iOS 8, файл экрана запуска. - person rmaddy; 17.09.2014
comment
Я создал новый проект в XCode 6. Я удалил LaunchScreen.xib из своего проекта. У меня нет изображений запуска iPhone 6 или 6+. Тем не менее, приложение работает в родном разрешении. Так что здесь есть еще одна недостающая часть. - person etayluz; 10.11.2014

Бхумит частично прав, но мне кажется, что здесь не хватает одной детали. Чтобы отключить собственное разрешение (и обеспечить масштабированное разрешение), я сделал следующее:

  1. Удалите LaunchScreen.xib из проекта, а также любые изображения запуска iPhone 6/6+, которые у вас могут быть.
  2. В цели вашего приложения перейдите в раздел «Общие» и в разделе «Файл экрана запуска» очистите запись.
  3. Очистить и восстановить
person etayluz    schedule 10.11.2014
comment
Для меня у меня был установлен Launch Image Source с Default.pngs для каждого разрешения в каталоге активов. Удаление изображений Retina HD 5.5 и Retina HD 4.7 из каталога помогло. - person Erik Villegas; 13.11.2014
comment
Обратите внимание, что вам все равно придется предоставить загрузочный образ [email protected] для тестирования вашего приложения с размером iPhone 5/5S. - person Marius Schulz; 17.02.2015
comment
Любая идея о том, как отключить собственное разрешение (обеспечить масштабированное разрешение) для iPhone X? - person Yahya Ibrahim; 20.09.2017
comment
Я на самом деле хочу обратного. Мне нужно исходное разрешение для iPhone X, но масштабированное для всего, что ниже. :) - person Joris Weimar; 27.09.2017