iOS Информация о версии SDK для iOS 8.1.1

Содержание:

Введение

iOS SDK 8.1.1 предоставляет поддержку для разработки приложений для iOS. Это упаковывается с полным набором инструментов Xcode, компиляторов и платформ для создания приложений для iOS и OS X. Эти инструменты включают XCode IDE и Инструментальный аналитический инструмент среди многих других.

С этим программным обеспечением можно разработать приложения для iPhone, iPad или iPod touch рабочий iOS 8. Можно также протестировать приложения с помощью включенного Средства моделирования iOS, поддерживающего iOS 8. iOS SDK 8.1.1 требует компьютера Mac рабочий OS X v10.9.3 (Индивидуалисты) или позже.

Эта версия iOS предназначается для установки только на устройствах, зарегистрированных в Программе Разработчика Apple. Попытка установить эту версию iOS несанкционированным способом могла поместить Ваше устройство в неприменимое состояние.

Для получения дополнительной информации и дополнительные ресурсы поддержки, посетите http://developer .apple.com/programs/ios/.

Создание отчетов ошибки

Для проблем, не упомянутых в разделе Notes и Known Issues, ошибки файла через веб-сайт Разработчика Apple (https://developer.apple.com/bug-reporting/ios/). Кроме того, можно обсудить эти вопросы и iOS SDK 8.1.1 на Форумах Разработчика Apple: http://devforums .apple.com. Для получения большей информации о iCloud для Разработчиков перейдите в http://developer .apple.com/icloud.

Повышения производительности

Этот выпуск включает исправления ошибок, увеличенную устойчивость и повышения производительности для iPad 2 и iPhone 4 s.

Примечания и известные проблемы

Следующие проблемы касаются использования iOS SDK 8.1.1 для разработки кода.

AVCapture

Известная проблема

Использование новой константы, AVCaptureISOCurrent, приведет к противоречивым значениям ISO (как наблюдается относительно свойства ISO) если setExposureModeCustomWithDuration:ISO:completionHandler: неоднократно вызывается.

CloudKit

Примечание:

Сингл CKAsset экземпляр больше не может устанавливаться как значение на многократном CKRecords.

Контакты

Примечание:

Адресная книга люди UI средство выбора была изменена для iOS 8. Новый режим с новым API был добавлен, где для приложения не нужен доступ к контактам пользователя, и пользователю не предложат доступ. Временная копия выбранного лица возвращается к приложению. Посмотрите ABPeoplePickerNavigationController.h для большего количества подробных данных.

Посмотрите новый PeoplePicker: Выбор демонстрационного проекта Лица или Свойства, демонстрирующего использование нового режима.

Провайдеры документа

Примечания

  • Для Вашего приложения нужно право iCloud, чтобы быть в состоянии использоваться в качестве провайдера документа.

  • Com.apple.developer.icloud-container-identifiers право требуется.

Известные проблемы

  • После вращающегося средства выбора документа к среде скрыта строка состояния.

  • После перевода в рабочее состояние средства выбора документа в среде содержание представления может быть смещено ниже панели навигации.

Расширения

Примечания

  • Для расширений нужна arm64 часть для работы 64-разрядных устройств. При попытке выполнить armv7 часть на 64-разрядном устройстве, то она не будет работать.

  • Приложения должны иметь arm64 часть, если пакет содержит платформу, против которой соединяются и приложение и расширение приложения.

Файловая система

Примечание:

Расположение файловой системы контейнеров приложения изменилось на диске. Вместо того, чтобы полагаться на трудно кодированную структуру каталогов, используйте NSSearchPathForDirectoriesInDomains функционируйте или URLForDirectory:inDomain:appropriateForURL:create:error: метод NSFileManager класс. Посмотрите Файлы Доступа и Каталоги в Руководстве по программированию Файловой системы.

Шрифты

Примечание:

Тайский системный шрифт увеличился в размере для улучшения удобочитаемости. Если Вы не примете соответствующие меры, это вызовет отсечение во многих местах в Вашем UI:

  1. Использовать UILabel как можно больше. При использовании Интерфейсного Разработчика удостоверьтесь, что не проверяются Подпредставления Клипа. UIKit увеличит область отсечения по мере необходимости для не отсечения текста.

  2. Используйте Динамический Тип. Это гарантирует, чтобы у Вас не было перекрывающихся глифов в многострочных метках или текстовых полях.

Если Вы не можете сделать 1 и 2, потому что Вы реализуете свои собственные представления, необходимо реализовать меры для не отсечения. Можно использовать CoreText для выяснения надлежащей области отсечения для строки текста путем вызова:

CTLineGetBoundsWithOptions(lineRef, kCTLineBoundsIncludeLanguageExtents);

Для предотвращения перекрывающихся глифов в элементах многострочного текста регулируйте высоту строки. Дополнительные 30% рекомендуются.

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

HealthKit

Примечание:

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

При использовании HKWorkouts, необходимо избежать читать проверки при работе версий iOS до 8,1 с:

NSOperatingSystemVersion ios8_1_0 = (NSOperatingSystemVersion){8, 1, 0};
if ([[NSProcessInfo processInfo] isOperatingSystemAtLeastVersion:ios8_1_0]) {
// Read and write workout information to HealthKit.
} else {
// Write workout information to HealthKit
}

Известная проблема

Данные глюкозы крови в настоящее время не выводятся на экран в медицинском приложении. Сторонний доступ и APIs не затронуты. Средствами управления доступом для Глюкозы Крови и всех других медицинских данных можно все еще управлять в медицинском приложении и в Настройках> Конфиденциальность> здоровье.

Для получения дополнительной информации см. https://support.apple.com/kb/HT6533.

iCloud

Примечание:

Почта handoff и AirDrop могут прекратить работать после изменения Вашего пароля iCloud в appleid.apple.com.

Обходное решение: Выпишитесь и назад в iCloud на устройстве.

Диск iCloud

Примечание:

URLForUbiquityContainerIdentifier: мог бы возвратиться nil при запуске приложения в XCode. Если так, Предпочтения открытой системы, перейдите к iCloud> Диск iCloud и включите XCode.

Клавиатуры

Известная проблема

Дополнительные Клавиатуры, включая сторонние клавиатуры, могут не появиться в Safari, Картах или приложениях сторонних производителей на Средстве моделирования.

Обходное решение: Клавиатуры должны быть тестируемыми в Календаре, Центре внимания, Контактах и фотографиях.

Центр уведомления

Примечание:

Расписание и надлежащее использование widgetPerformUpdateWithCompletionHandler: предназначается как удобный дом для всей логики обновления данных/модели. Если реализовано, когда Центр Уведомления будет видим, а также в фоновом режиме, система вызовет в подходящие времена для виджета для обновления его состояния, оба. Реализация требуется, чтобы включать фоновые обновления. Ожидается, что виджет выполнит работу для обновления асинхронно и от основного потока как можно больше. Когда работа завершена, передавая надлежащее, виджеты должны вызвать блок параметра NCUpdateResult. Виджеты должны блок NOT, возвращающийся из viewWillAppear: на результатах этой работы. Вместо этого виджеты должны загрузить кэшируемое состояние в viewWillAppear: для соответствия состояния представления от последнего viewWillDisappear:, тогда перейдите гладко к новым данным, когда они поступят.

NSURLSession

Примечание:

NSURLSessionTask класс предоставляет новому «приоритетному» свойству три связанных константы: NSURLSessionTaskPriorityDefault, NSURLSessionTaskPriorityLow, и NSURLSessionTaskPriorityHigh. NSURLSessionTask приоритеты могут использоваться, чтобы указать, как должны быть приоритезированы многократные запросы и ответы на тот же узел. Обратите внимание на то, что приоритет является подсказкой и не строгой гарантией NSURLSessionTask производительность.

Для полных подробных данных использования NSURLSessionTask приоритеты, обратитесь к NSURLSession.h заголовочный файл, который предоставлен платформой Основы.

Телефон

Примечания

Для активации функциональности Вызова Wi-Fi для T-Mobile (только США) выполните эти шаги:

  • Перейдите к Настройкам> Телефон> Вызов Wi-Fi.

  • Переключите переключатель Wi-Fi Calling к ON.

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

Фотографии

Примечания

  • Поддержите резервное копирование своей фото библиотеки прежде, чем включить и при использовании фото беты Библиотеки iCloud:

    • Импорт к Mac с помощью iPhoto

    • Импорт к Mac с помощью Захвата изображения

  • фото бета Библиотеки iCloud не загрузит фотографии и видео, синхронизировавшиеся к Вашему устройству от iTunes. Любые фотографии и видео, синхронизировавшие к Вашему устройству от iTunes, будут удалены при включении фото беты Библиотеки iCloud.

  • iPhoto для iOS не запустится на бете iOS 8. Запуск Photos.app переместит Ваши редактирования iPhoto на фото библиотеку iOS 8. Удостоверьтесь, что Ваш iPhoto для данных iOS включен в Ваше резервное копирование устройства.

  • Возможность автоматически оптимизировать пространство устройства включена для всех учетных записей, больше, чем 5 ГБ.

  • При использовании Совместного использования семьи iCloud включены и Размещение фотографий iCloud и Мой фото Поток.

Настройка профилей

Известная проблема

При обновлении до 8.1.1 Бет от iOS 8 Бет, можно видеть, что приложения отказывают вследствие настройки проблем профиля.

Обходное решение:

  1. Подключите устройство через USB к Вашему Mac

  2. Запуск XCode

  3. Выберите Window-> Devices

  4. Щелкните правой кнопкой по устройству в левом столбце, выберите «Show Provisioning Profiles»

  5. Щелкните по рассматриваемому профилю настройки

  6. Нажмите «-» кнопка

  7. Продолжайте к удалению всех затронутых профилей.

  8. Переустановите приложение

UIKit

Примечания

  • UILabel имеет значение по умолчанию YES для clipsToBounds. Это отличается от нормального UIView значение по умолчанию НЕТ.

  • leftLayoutGuide и rightLayoutGuide APIs был удален. Используйте layoutMargins свойство вместо этого.

WebKit

Примечания

Навигация, Синхронизирующая API, была отключена только на iOS вследствие проблем производительности.

Вызов Wi-Fi (T-Mobile только США)

Примечание:

Когда устройство будет в состоянии сделать и получить вызовы Wi-Fi, имя поставщика услуг в строке состояния покажет “Wi-Fi T-Mobile”.