В файле Info.plist есть много настроек, играющих важную роль для правильного поведения вашего приложения.

Их полное описание содержится в справочнике Information Property List Key Reference компании Apple. Большинство требуемых ключей создается как часть шаблона и имеет разумные значения, заданные по умолчанию, но их все равно следует перепроверить. Особое внимание следует уделить следующим ключам.

Имя комплекта на экране (CFBundleDisplayName)

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

Поддерживаемые варианты ориентации интерфейса (UlSupportedlnterfaceOrientations)

Этот ключ задает спектр возможных вариантов ориентации интерфейса приложения. Эту настройку можно задать с помощью флагов на вкладке General в редакторе цели. Иногда приходится редактировать файл Info, plist вручную, чтобы изменить порядок следования вариантов ориентации, потому что вид приложения при запуске на устройстве iPhone определяет ориентация, указанная первой.

Требуемые возможности устройства (UIRequiredDeviceCapabilities)

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

Номер версии (CFBundleVersion)

Приложение должно иметь номер версии. Лучше всего задавать его на вкладке General в редакторе цели. Здесь существует небольшая путаница из-за наличия двух полей: Version и Build. Первое поле соответствует ключу “Bundle versions string, short” (CFBundleShortVersionString) в файле Info.plist, а второе — ключу “Bundle version” (CFBundleVersion). Насколько я понял, компания обращает внимание на второй ключ, только если не задан первый. Я считаю наиболее безопасным при предоставлении приложения в интернет-магазин Apple Store задать оба значения одинаковыми. Значение должно иметь вид строки версии, например “1.0”. Именно этот номер будет фигурировать на веб-страницах интернет-магазина Арр Store. Невозможность увеличить значение строки при предоставлении новой версии приложения является причиной для отказа.

Стиль строки состояния (UIStatusBarStyle)

В течение многих лет компания Apple изменяла свои правила, касающиеся строки состояния, как перчатки. Существовали правила “серый или черный”, “автоматический выбор цвета”, “черный для iPad” и т.д. Новое правило для системы iOS 7 само по себе простое, но оно также отражает остатки отмененных правил.

В системе iOS 7 все приложения являются полноэкранными как на iPhone, так и на iPad, и строка состояния, если она видна, представляет собой прозрачную накладку. Существуют два стиля строк состояния: UIStatusBarStyleDefault, т.е. черный текст строки состояния, и UIStatusBarStyleLightContent, т.е. белый текст строки состояния. Способ, которым стиль строки состояния задается в системе iOS 7, изменился. Теперь он задается не на уровне приложения, а на уровне контроллера представления: считается, что в контроллерах представлений вашего приложения установлен стиль строки состояния UIStatusBarStyleDefault, который реализуется методом preferredStatusBarStyle.

Таким образом, современный подход подразумевает задание стиля строки состояния контроллерами представлений во время выполнения приложения, а не в файле Info.plist.

Тем не менее возможность задать стиль строки состояния в файле Info.plist остается либо для обеспечения обратной совместимости, потому что ваше приложение также может выполняться под управлением системы iOS 6 и более ранних версий, либо из-за того, что ваш старый код невозможно адаптировать для системы iOS 7. В этом случае для настройки стиля строки состояния можно продолжать использовать файл Info.plist; по умолчанию в системе iOS 7 этот параметр игнорируется.

Кроме того, можно попросить систему iOS 7 не игнорировать этот параметр. Для этого в файле Info.plist установите ключ “View controller-based status bar appearance” (UIViewControllerBasedStatusBarAppearance)равным NO. Это значит, что ваше приложение не будет использовать вызовы контроллера представлений, такие как preferredStatusBarStyle для определения стиля строки состояния; вместо этого оно установит общее свойство statusBarStyle класса UIApplication, как это делалось в системе iOS 6 и более ранних версиях. Теперь настройка UIStatusBarStyle в файле Info.plist не будет игнорироваться системой iOS 7; старые настройки Black Translucent (“Transparent black style” UIStatusBarStyleBlackTranslucen t) и Black Opaque (“Opaque black style” UIStatusBarStyleBlackOpaque) будут считаться эквивалентными новой настройке UIStatusBarStyleLightContent. Эти настройки можно удобно изменять с помощью раскрывающегося списка Status Bar Style на вкладке General в редакторе цели.

Строка состояния вначале скрыта (UIStatusBarHidden)

Это свойство является параллельным стилю строки состояния. В системе iOS 7 визуализацией и сокрытием строки состояния управляют контроллеры представлений, реализующие метод prefersStatusBarHidden. Таким образом, настройка из файла Info .plist в системе iOS 7 игнорируется, если в этом файле ключ “View controller-based status bar appearance”(UIViewControllerBasedStatusBarAppearance)не задан равным NO. Ключ UIStatusBarHidden удобно задать, если он еще нужен, с помощью флага “Hide during application launch” на вкладке General в редакторе цели.

 

Параметры в списке свойств могут принимать разные значения в зависимости от устройств, на которых будет выполняться ваше приложение. Для того чтобы указать, что данный список свойств содержит настройки, предназначенные для конкретного типа устройств, добавьте к его ключам суффикс ~ iphone, ~ipod или ~ipad. Это свойство обычно является полезным для универсальных приложений, описанных ранее.


 

 

 

Добавить комментарий