iOS Информация о версии SDK для iOS 5.0
Содержание:
Введение
iOS SDK 5 предоставляет поддержку для разработки приложений для iOS и включает полный набор инструментов Xcode, компиляторов и платформ для того, чтобы создать приложения для iOS и Mac OS X. Эти инструменты включают XCode IDE и Инструментальный аналитический инструмент среди многих других.
С этим программным обеспечением можно разработать приложения, работающие на iPhone, iPad или iPod touch рабочий iOS 5. Можно также протестировать приложения с помощью включенного Средства моделирования iOS, поддерживающего iOS 5. Существует два изображения Xcode iOS SDK 5, один для установки на компьютере Macintosh рабочий Mac OS X 10.6.7 (Snow Leopard) или позже, другой для установки на компьютере Macintosh рабочий Mac OS X 10.7 (Лев).
Эта версия iOS предназначается только для установки на устройствах, зарегистрированных в программе разработчика Apple. Попытка установить эту версию iOS несанкционированным способом могла поместить Ваше устройство в неприменимое состояние.
Для получения дополнительной информации и дополнительные ресурсы поддержки, посещение:
Создание отчетов ошибки
Сообщите о любых ошибках, не упомянутых в разделе Introduction с помощью Генератора отчетов Ошибки Apple на веб-сайте Разработчика Apple (http://developer .apple.com/bugreporter/). Кроме того, можно обсудить эти вопросы и iOS SDK 5 на Форумах Разработчика Apple: http://devforums .apple.com. Можно также получить доступ к большей информации о iCloud для Разработчиков в: http://developer .apple.com/icloud
Примечания и известные проблемы
Следующие проблемы касаются использования 5 SDK для разработки кода.
Учетные записи
При создании учетной записи iCloud можно использовать любой Apple ID, пока это - полный адрес электронной почты и не учетная запись MobileMe. Если у Вас есть учетная запись MobileMe, можно переместить ту учетную запись в iCloud. Можно найти больше информации в: http://me .com/move
AirPlay
Запускаясь в iOS 5, AirPlay включают по умолчанию для видеоконтента в приложениях и веб-сайтах.
В iOS 5 Основа AV добавляет поддержку воспроизведения видео через AirPlay.
APIs
NSNetServiceкласс и CFNetService APIs делают не включают интерфейсы P2P по умолчанию. Для просмотра зарегистрируйтесь, или службы решения по интерфейсам P2P, приложение должно использовать Добрый деньDNSService*()APIs, отмеченный ниже.Установка interfaceIndex параметра на
kDNSServiceInterfaceIndexAnyв следующем API's не будет включать интерфейсы P2P по умолчанию. Для включения интерфейсов P2P необходимо теперь установитьkDNSServiceFlagsIncludeP2Pфлаг при использованииkDNSServiceInterfaceIndexAnyили набор interfaceIndex кkDNSServiceInterfaceIndexP2P. Затронутый APIs:
Проверка API
В iOS 5 средств разработки возможно извлечь APIs, используемый приложением и иметь их проверенный на использование частного APIs. Эта опция предлагается при проверке приложения для представления приложения.
Apple TV
Программное обеспечение Apple TV позволяет пользователям зеркально отразить содержание iPad 2 к Apple TV (второе поколение) использование AirPlay. Это программное обеспечение также включает фото Поток на Apple TV, таким образом, пользователи могут получить доступ к фотографиям, сохраненным в iCloud. Бета программного обеспечения Apple TV предоставлена для тестирования последней функциональности AirPlay в iOS 5 приложений и веб-сайты. Если Вы хотите установить бету программного обеспечения Apple TV на своем устройстве, необходимо сначала зарегистрировать устройство UDID в Портале Программы Разработчика iOS.
Автоматический подсчет ссылок
В XCode, если конфигурация установлена в Устройство и существует пространство по пути одного из исходных файлов (более обычно, проект в каталоге с пробелами), “Преобразовывают в Автоматический Подсчет ссылок” шаг (после Профилактической проверки), перестанет работать с ошибкой:
Error in format of file: <path>.Если встречено, пользователь должен переключиться на Средство моделирования и повторить миграцию.
Совместимость на уровне двоичных кодов
На приложениях, соединенных против iOS 5 SDK, смещения содержания представления прокрутки больше не будут округляться к интегральным пикселям во время жеста повышения.
GameKit
Данные соответствия для основанных на повороте соответствий ограничиваются 4 КБ.
FIXED: автосоответствие основанному на повороте контроллеру представления не работает. Приглашает или прямое автосоответствие, API может использоваться в качестве обходного решения.
Резервное копирование iCloud
Резервные копии, сделанные до 22-го сентября, больше не доступны. Строго советуют обновить до этой версии iOS 5, чтобы продолжать поддерживать Ваши устройства
Хранение iCloud
В хранилище значения ключа iCloud максимальное число ключей было увеличено к 256.
Все недавно сгенерированные настраивающие профили теперь автоматически включены для iCloud. При использовании управляемой Команды XCode, Настраивающей Профиль щелкните по обновлению в Организаторе XCode для получения нового поддерживающего iCloud профиля. Для включения всех других профилей настройки для iCloud просто регенерируйте профили в Портале Настройки iOS.
Если Ваше приложение использует
NSMetadataQueryкласс, необходимо установить предикат, и предикат теперь соблюдают. Но предикатNSPredicate- предикат стиля, не предикат Стиля центра внимания. Пример различия - то, что необходимо использоватьLIKEвместо=для подстановочного соответствия. Различия определяются более подробно в: http://developer.apple.com/library/mac/#documentation/Cocoa/Conceptual/Predicates/Articles/pSpotlightComparison.html#//apple_ref/doc/uid/TP40002370-SW1.setSortDescriptors:методNSMetadataQueryне поддерживается.Для включения хранения iCloud в приложениях в iOS 5 щелкните по флажку Enable Entitlements в области Summary проекта. XCode создает пользовательский дающий право файл для Вашего проекта, автоматически включающего Вашу Команду ID. Можно добавить дополнительные значения Контейнера iCloud как требуется приложением. (Обратите внимание на то, что необходимо регенерировать существующие профили настройки, или с XCode или в Портале Настройки iOS, для использования хранения iCloud.)
Контейнерная строка идентификатора Вы передаете
URLForUbiquityContainerIdentifier:методNSFileManagerдолжен включать команду ID в начале строки. Как удобство, можно передатьnilполучать первый контейнер документа ID, указанный в правах Вашего приложения.В iOS 5 файлы, защищенные через Защиту данных, не могут использоваться с Хранением iCloud APIs.
Предъявители файла — объекты, принимающие
NSFilePresenterпротокол — не получает некоторые сообщения, что они, как предполагается, получают, включая:Как работа вокруг, реализуйте
relinquishPresentedItemToWriter:метод и проверка, чтобы видеть, записал ли писатель фактически, когда Ваш предъявитель файла повторно получает файл.Если Вы сообщаете об ошибке, связанной с интерфейсами хранения iCloud, включайте журналы, собранные во время Вашего сеанса отладки. Для генерации этих журналов необходимо установить специальный профиль отладки на устройстве.
Профиль отладки может быть получен из http://connect .apple.com. Этот профиль включает генерацию журналов отладки, которые необходимы для диагностирования любых проблем с помощью хранения iCloud. Инструкции для сбора журналов:
Установите профиль. (Самый простой способ сделать это должно отправить его по почте себе и открыть присоединение на Вашем устройстве.)
Воспроизведите ошибку.
Синхронизация с iTunes для получения по запросу журналов от устройства.
Присоедините журналы к своему отчету об ошибках. Можно найти журналы в
~/Library/Logs/CrashReporter/MobileDevice/DeviceName/DiagnosticLogs.
Эти журналы могут стать большими очень быстро, таким образом, необходимо удалить профиль после того, как Вы воспроизвели проблему и вытянули журналы Вашего устройства.
Имена файлов нечувствительны к регистру в Mac OS X, но чувствительны к регистру в iOS. Это может привести к проблемам при совместном использовании файлов между двумя использованиями iCloud. Необходимо предпринять шаги на iOS, чтобы избежать создавать файлы, имена которых отличаются только случаем.
Проигрыватель фильмов
Запускаясь в iOS 5.0, для упрощения управления воспроизведением с более прекрасными зернами, проигрыватель фильмов автоматически не подготовлен играть после создания. Вызовите prepareToPlay метод для подготовки проигрывателя фильмов. Для получения дополнительной информации посмотрите Ссылку класса MPMoviePlayerController.
Аудиоплеер
FIXED: При удалении песни или видео от Музыки/Видео на устройстве, сбоях приложения Аудиоплеера.
Безопасность
В iOS 5 не поддерживается подписание сертификатов с подписями MD5. Гарантируйте, чтобы сертификаты использовали алгоритмы сигнатуры на основе SHA1 или SHA2.
Трамплин
Продвиньте и локальные уведомления для приложений появляются в новом Центре Уведомления в iOS 5. Центр уведомления выводит на экран уведомления, которые считают "непрочитанными”. Для размещения нажатия и локальных уведомлений, не имеющих никакого непрочитанного состояния установите количество значка приложения в 0 для очистки уведомлений того приложения от Центра Уведомления.
Автоматизация UI
При использовании
performTaskWithPathArgumentsTimeoutметодUIAHostв сценарии Автоматизации UI, где выводы API чрезмерно (говорят, тысячи строк текста) к стандарту или стандартной погрешности, может зайти в тупик задача, пока тайм-аут не достигнут, в которую точку это бросит исключение JavaScript.lock()иunlock()функцииUIATargetбыли замененыlockForDuration(<секунды>)функция.В iOS 5 можно теперь инициировать выполнение сценария Автоматизации UI на устройстве на iOS от терминала узла при помощи инструментального инструмента. Команда:
instruments -w <device id> -t <template> <application>
При использовании cli инструментов для Автоматизации UI можно теперь предназначаться для Шаблона Автоматизации по умолчанию и передать сценарий и путь результатов в инструмент как опции переменной окружения. Например:
instruments -w <device id> -t /Developer/Platforms/iPhoneOS.platform/Developer/Library/Instruments/PlugIns/AutomationInstrument.bundle/Contents/Resources/Automation.tracetemplate <application> -e UIASCRIPT <script> -e UIARESULTSPATH <results path>
UIKit
Обратные вызовы вращения в iOS 5 не применяются для просмотра контроллеров, представленных по полному экрану. То, что это означает, - то, что, если Ваш код представляет контроллер представления по другому контроллеру представления, и затем пользователь впоследствии поворачивает устройство к различной ориентации на увольнение, базовый контроллер (т.е. контроллер представления) не получат обратных вызовов вращения. Отметьте, однако, что контроллер представления получит a
viewWillLayoutSubviewsвызовите, когда это будет восстановлено, иinterfaceOrientationсвойство может запрашиваться от этого метода и использоваться для разметки контроллера правильно.В iOS 5,
UIPickerViewкласс не отправляетpickerView:didSelectRow:inComponent:делегируйте сообщение в ответ на программируемый выбор элемента.Возврат
nilотtableView:viewForHeaderInSection:метод (или его эквивалентный нижний колонтитул) больше не достаточен для сокрытия заголовка. Необходимо переопределитьtableView:heightForHeaderInSection:и возвратитесь0.0скрыть заголовок.В iOS 5,
UITableViewкласс имеет два метода для перемещения одной ячейки от одной строки до другого с определенными параметрами. Этот APIs:Используя
UIWebViewкласс в Интерфейсном Разработчике, выбирая цвет прозрачного фона возможен в iOS 5. Разработчики, компилирующие против нового SDK, могут проверить свой XIB наUIWebViewпрозрачная установка.В iOS 5,
UINavigationBar,UIToolbar, иUITabBarреализации изменились так, чтобыdrawRect:метод не вызывают, если он не реализован в подклассе. Повторно реализовавшие приложенияdrawRect:в категории на любом из этих классов найдет чтоdrawRect:метод не вызывают. UIKit делает проверку ссылки, чтобы препятствовать методу вызываться в приложениях, соединенных перед iOS 5, но не поддерживает этот проект на iOS 5 или позже. Приложения могут также:Используйте настройку API для панелей в iOS 5 и позже, который является предпочтительным путем.
Подкласс
UINavigationBar(или другие классы панели) и переопределениеdrawRect:в подклассе.
indexPathForRow:inSection:,section, иrowметодыNSIndexPathтеперь используйтеNSIntegerвместоNSUInteger, так, чтобы эти типы соответствовали с методами, определенными наUITableView.Поведение
UITableViewклассscrollToRowAtIndexPath:atScrollPosition:animated:метод изменился. Если позиция прокруткиUITableViewScrollPositionTopилиUITableViewScrollPositionBottomуказан, метод теперь приводит в соответствие с верхними и нижними частямиcontentInsetсвойство.В выпусках до iOS 5,
UIPopoverControllerкласс безусловно установил бы маски автоизменения размеров контроллеров представления, обеспечивших содержание для контроллера легкой сдобы. Это также безусловно установило бы маски автоизменения размеров представлений контроллеров представления, спешил к aUINavigationControllerобъект, который был довольным контроллер представления контроллера легкой сдобы.UIPopoverControllerкласс больше не делает это для приложений, соединенных против iOS 5 или позже. Разработчики должны гарантировать, что маски автоизменения размеров представлений установлены должным образом допускать произвольное изменение размеров в любом контейнере, не просто легкую сдобу. Маска(UIViewAutoresizingFlexibleWidth|UIViewAutoresizingFlexibleHeight)разумно.Обработчик завершения для
saveToURL:forSaveOperation:completionHandler:вызывается за пределами скоординированного блока записи.autosaveWithCompletionHandler:метод теперь только требуется основанный на периоде, сохраняет, когда безопасно возвратиться без сохранения. Документы должны сохранить, тем не менее, еслиsaveToURL:forSaveOperation:completionHandler:метод вызывается.
Safari и WebKit
В iOS 5, новом наследованном свойстве CSS,
-webkit-overflow-scrolling, доступно. Значениеtouchпозволяет веб-разработчику выбирать в к прокрутке собственного стиля вoverflow:scrollэлемент. Значение по умолчанию для этого свойстваauto, который позволяет прокрутку единственного пальца без импульса.Платформа WebKit была обновлена к версии, близко соответствующей механизм, используемый Safari 5.1 на Рабочем столе. Существуют некоторые области для знания с новой платформой WebKit на iOS 5. В частности, для веб-сайтов и исходных приложений, использующих UIWebView:
Существует новый HTML5-совместимый синтаксический анализатор.
Текстовая ширина расположения может измениться немного, потому что округляющее слово поведение теперь имеет основанную на плавающей точке точность.
Существует улучшенная проверка
<input type=number>поле формы, включающее начальные нули удаления и форматирование чисел.Сенсорные события теперь поддерживаются на полях ввода.
<input type=range>теперь поддерживается.window.onerrorтеперь поддерживается.Существует новый агент пользователя, не имеющий информации о локали в Строке агента пользователя.
URLs является теперь каноническим путем создания схемы всем нижним регистром. Если поддельный URL используется для передачи информации от a
UIWebViewназад к собственному коду, удостоверьтесь, что схема всегда является нижним регистром, или что собственный код сравнивает схему нечувствительным к регистру способом.
Синхронизация Wi-Fi
Беспроводная поддержка синхронизации требует Mac OS X 10.6.8 или Льва. Вы будете видеть опцию включить беспроводную синхронизацию при подключении устройства с iTunes с USB-кабелем. Рекомендуется выполнить начальную синхронизацию с кабелем после восстановления устройства.
Когда устройство подключено к питанию и в той же сети как парный компьютер, беспроводная синхронизация инициирована автоматически. Или, можно вручную инициировать синхронизацию от iTunes или от Настроек> Общий> Синхронизация iTunes (та же сеть как соединенный требуемый компьютер).
При нахождении проблем с приложениями, носителями и/или фотографиями синхронизировавшими к устройству, можно сбросить тогда пересинхронизацию. От Настроек> Общий> Сброс, выберите Erase все Содержание и Настройки. Тогда повторно соединитесь с iTunes и синхронизацией снова.
Инструменты XCode
Для получения информации об изменениях в XCode, Интерфейсном Разработчике, Инструменты и Средство моделирования iOS, видят Информацию о версии XCode.
Copyright © 2015 Apple Inc Все права защищены. Условия использования | Политика конфиденциальности | обновленный: 25.10.2011