Введение в iOS 10

С новым пакетом SDK для iOS 10 Apple включала новые API и службы, позволяющие разработчику создавать новые категории приложений и функций. Теперь приложение iOS может расширить приложения "Сообщения", Siri, Телефон и Карты, чтобы обеспечить широкие функциональные возможности для конечного пользователя, который ранее был недоступен.

Дополнительные сведения об iOS 10 см. в документации по iOS и приложениям Apple.

Новые возможности iOS 10

Apple добавила несколько новых API и служб в iOS 10, а также множество улучшений существующих функций, в том числе:

Адаптация к отображению истинного тона

Технология "Истинный тон" Apple использует датчик внешнего света на устройстве iOS для динамической настройки цвета и интенсивности дисплея в соответствии с текущими условиями освещения. iOS 10 предоставляет новый ключ UIWhitePointAdaptivityStyle , который можно добавить в файл приложения Info.plist и управляет применением стандартного изменения цвета.

Доступны следующие значения:

  • UIWhitePointAdaptivityStyleStandardПо умолчанию — используйте стандартную адаптируемость белых точек.
  • UIWhitePointAdaptivityStyleReading — Используется для приложений, ориентированных на чтение.
  • UIWhitePointAdaptivityStyleGame — Используется для приложений, ориентированных на игру.
  • UIWhitePointAdaptivityStyleVideo — Используется для приложений, ориентированных на видео.
  • UIWhitePointAdaptivityStylePhoto — Используется для приложений, ориентированных на фотографию, где цветовая точность более важна, чем экологические корректировки белых точек.

Расширения приложений

Apple предоставила несколько новых точек расширения приложений в iOS 10:

  • Каталог вызовов
  • Пользовательский интерфейс "Намерения и намерения"
  • Сообщения
  • Содержимое уведомления
  • Notification Services
  • Пакет наклейки

Кроме того, расширения сторонних приложений клавиатуры имеют следующие улучшения:

  • Новое DocumentInputMode свойство UITextDocumentProxy класса может определить язык ввода документа и разрешить расширению клавиатуры выровнять этот язык.
  • Новый HandleInputModeList метод позволяет расширению клавиатуры отображать меню выбора клавиатуры системы в ответ на нажатие клавиши Globe.

Дополнительные сведения см. в статье "Введение в расширения", "Интеграция приложений сообщений", "Введение в упреждающие предложения", введение в SiriKit, введение в уведомления пользователей и руководство по программированию расширений приложений Apple.

Улучшенные возможности поиска приложения

Core Spotlight в iOS 10 предоставляет несколько улучшений для поиска приложений, таких как:

  • Crowdsourced Deep-Link Популярность (с разностной конфиденциальностью) — предоставляет способ продвижения содержимого глубоко связанного приложения в результатах поиска.
  • Поиск в приложении — используйте новый CSSearchQuery класс для предоставления возможности поиска в приложении Spotlight, аналогично тому, как работают приложения "Почта", "Сообщения" и "Заметки".
  • Продолжение поиска. Позволяет пользователю запускать поиск в Центре в центре внимания или Safari, а затем открывать приложение и продолжать поиск.
  • Визуализация результатов проверки — средство проверки API поиска приложений Apple теперь отображает визуальное представление разметки веб-сайта и глубокое связывание при подготовке тестов.
  • Общий доступ к изображениям приложения сообщений— позволяет отображать популярные образы в приложении, предоставляемые для совместного использования в сообщениях (с помощью расширения приложения сообщений) в поисках в Центре внимания.

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

Улучшения Apple Pay

Apple сделал несколько улучшений Apple Pay в iOS 10, которые позволяют пользователю выполнять безопасные платежи с веб-сайтов и через взаимодействие с Siri и Карты.

С iOS 10 были добавлены несколько новых API, которые работают с iOS и watchOS для поддержки динамических сетей оплаты и новой тестовой среды песочницы.

Кроме того, платформа PassKit была расширена для поддержки Apple Pay за пределами UIKit и разрешения издателям карта представить свои карта из своих приложений.

Чтобы узнать больше, ознакомьтесь с нашим руководством по усовершенствованиям Apple Pay.

Альтернативные значки приложений

Apple добавила несколько улучшений в iOS 10.3, которые позволяют приложению управлять своим значком:

  • ApplicationIconBadgeNumber — Получает или задает значок приложения в Springboard.
  • SupportsAlternateIcons — Если true у приложения есть альтернативный набор значков.
  • AlternateIconName — Возвращает имя альтернативного значка, выбранного в данный момент или null если используется первичный значок.
  • SetAlternameIconName — Используйте этот метод для переключения значка приложения на заданный альтернативный значок.

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

Общие сведения о CallKit

Новый API CallKit в iOS 10 позволяет приложениям VOIP интегрироваться с пользовательским интерфейсом i Телефон и предоставлять знакомый интерфейс и взаимодействие с конечным пользователем. С помощью этого API пользователи могут просматривать и взаимодействовать с вызовами VOIP с экрана блокировки устройства iOS и управлять контактами с помощью представлений избранного и последних приложений приложения Телефон.

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

Дополнительные сведения см. в руководстве по Callkit .

Интеграция приложения для обмена сообщениями

iOS 10 позволяет включить расширение приложения сообщений в решение Xamarin.iOS, которое интегрируется с приложением "Сообщения" и предоставляет пользователю новые функциональные возможности. Расширение может отправлять текст, наклейки, файлы мультимедиа и интерактивные сообщения. Доступны два типа расширения приложения сообщений:

  • Пакеты с наклейками — содержит коллекцию стикеров, которые пользователь может добавить в сообщение. Пакеты с наклейками можно создавать без написания кода.
  • Приложение iMessage — может представлять пользовательский интерфейс в приложении "Сообщения" для выбора стикеров, ввода текста, включая файлы мультимедиа (с дополнительными преобразованиями типов) и создание, редактирование и отправка сообщений взаимодействия.

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

Улучшения издателя новостей

С iOS 10 Apple позволит любому из крупных журналов и новых организаций блоггерам и независимым издателям зарегистрироваться и доставить содержимое в приложение Apple News. Дополнительные сведения см. в документации по ресурсам Новостей Apple.

Обеспечение обратной связи Haptic

На i Телефон 7 и i Телефон 7 Plus, Apple включила новые хиптичные ответы, которые предоставляют дополнительные способы физического взаимодействия с пользователем. Используйте новые варианты обратной связи для получения внимания пользователя и укрепления их действий.

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

Чтобы узнать больше, ознакомьтесь с нашим руководством по предоставлению хаптических отзывов .

Упреждающие предложения

iOS 10 предоставляет новые способы привлечения к приложению, позволяя системе заранее предоставлять полезные сведения пользователю автоматически. Так же, как и iOS 9, предоставлял возможность добавлять глубокий поиск в приложение с помощью предложений Spotlight, Handoff и Siri, с iOS 10 приложение может предоставлять функциональные возможности, которые могут быть представлены пользователем системой из следующих расположений:

  • Переключатель приложений
  • Экран блокировки
  • CarPlay
  • Карты
  • Взаимодействие Siri
  • Предложения QuickType

Приложение предоставляет эту функцию системе с помощью коллекции технологий, таких как NSUserActivity, веб-разметка, Core Spotlight, MapKit, Медиаплеер и UIKit.

Дополнительные сведения см. в руководстве по упреждающим предложениям .

Проверка приложения для запросов

Новый метод iOS 10.3 RequestReview() позволяет приложению iOS запрашивать у пользователя частоту или проверку. Хотя этот метод можно вызвать в любой момент, когда он имеет смысл в пользовательском интерфейсе, процесс проверки регулируется и обрабатывается политикой App Store. В результате этот метод может или не отображать оповещение и никогда не вызываться в ответ на действие пользователя, например нажатие кнопки.

Дополнительные сведения см. в руководстве по просмотру приложений запроса.

Улучшения безопасности и конфиденциальности

Apple сделала несколько улучшений безопасности и конфиденциальности в iOS 10, которые помогут разработчику улучшить безопасность своих приложений и обеспечить конфиденциальность конечных пользователей.

В результате приложения, работающие в iOS 10 (или более поздней версии), должны статически объявить свое намерение получить доступ к определенным функциям или сведениям о пользователе, введя один или несколько ключей конфиденциальности в своих Info.plist файлах, которые объясняют пользователю, почему приложение хочет получить доступ.

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

SiriKit

Новое в iOS 10, SiriKit позволяет приложению Xamarin.iOS предоставлять службы, доступные пользователю с помощью Siri на устройстве iOS. Эта функция предоставляется в одном или нескольких расширениях приложений с помощью новых платформ пользовательского интерфейса "Намерения и намерения".

SiriKit поддерживает следующие домены служб:

  • Звук или видеозвонок.
  • Бронирование поездки.
  • Управление тренировками.
  • (Проекты разработки с открытым кодом в .NET).
  • Поиск фотографий.
  • Отправка или получение платежей.

Когда пользователь отправляет запрос Siri с участием одной из служб расширения приложения, SiriKit отправляет расширение объект Intent , описывающий запрос пользователя вместе с любыми вспомогательными данными. Затем расширение приложения создает соответствующий объект Ответа для заданного намерения, подробные сведения о том, как расширение может обрабатывать запрос.

Хотя Siri обычно обрабатывает все взаимодействие с пользователем, расширение приложения может использовать платформу пользовательского интерфейса намерения для представления полнофункциональные пользовательские интерфейсы с фирменной символикой приложения и дополнительными сведениями.

Дополнительные сведения см. в руководстве по SiriKit .

Распознавание речи

iOS 10 включает новый API службы "Речь", который позволяет приложению поддерживать непрерывное распознавание речи и транскрибировать речь (из динамических или записанных аудиопотоков) в текст.

Поскольку распознавание речи требует передачи и временного хранения данных на серверах Apple, приложение должно запросить разрешение пользователя на выполнение распознавания, включив NSSpeechRecognitionUsageDescription ключ в файл Info.plist и вызвав SFSpeechRecognizer.RequestAutorization метод.

Дополнительные сведения см. в руководстве по распознаванию речи .

Уведомления пользователей

Платформа уведомлений пользователей в iOS 10 позволяет выполнять доставку и обработку локальных и удаленных уведомлений. С помощью этой платформы приложение или расширение приложения может запланировать доставку локальных уведомлений, указав набор условий, таких как расположение или время дня.

Кроме того, приложение или расширение может получать (и потенциально изменять) локальные и удаленные уведомления по мере их доставки на устройство iOS пользователя.

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

Дополнительные сведения см. в руководстве по платформе уведомлений пользователей.

Учетная запись подписчика видео

Новая платформа учетной записи подписчика видео для iOS 10 позволяет приложениям, поддерживающим проверку подлинности потоковой передачи или видео по запросу, проходить проверку подлинности с помощью своего кабеля или поставщика спутникового телевидения с помощью единого входа для конечного пользователя.

Широкая цветовая палитра

iOS 10 расширяет поддержку форматов пикселей расширенного диапазона и цветовых пространств с широким диапазоном в системе, включая платформы, такие как core Graphics, Core Image, Metal и AVFoundation. Поддержка устройств с широкоцветными дисплеями упрощается, обеспечивая это поведение во всем графическом стеке.

Кроме того, UIKit был изменен, чтобы работать в новом расширенном пространстве цветов SRGB , что упрощает сочетание цветов в широких цветных gamuts без значительной потери производительности.

Apple предлагает следующие рекомендации при работе с широкими цветами:

  • UIColor теперь использует цветовое пространство sRGB и больше не зажимает значения для 0.01.0 диапазона. Если приложение зависит от предыдущего поведения зажимов, его необходимо изменить для iOS 10.
  • Среда рисования будет настроена для цветового пространства sRGB при выполнении пользовательского UIView рисования на iPad Pro.
  • Если приложение выполняет настраиваемую отрисовку UIImages, используйте новый класс UIGraphicsImageRender , чтобы указать использование форматов расширенного диапазона или стандартного диапазона.
  • При использовании низкоуровневого API, например Core Graphics или Metal для обработки изображений, разработчик должен использовать расширенное цветовое пространство диапазона и формат пикселей, поддерживающий 16-разрядные значения с плавающей запятой. При необходимости разработчику придется вручную зажать значения цветового компонента.
  • Основные графические элементы, основные изображения и шейдеры производительности металла предоставляют новые методы для преобразования между двумя цветовыми пространствами.

Дополнительные сведения см. в руководстве по широкому цвету .

Улучшения мини-приложений

Apple представила несколько улучшений в системе мини-приложений, чтобы гарантировать, что мини-приложения выглядят отлично на любом фоне, существующем на новом экране блокировки iOS 10. Свойство NotificationCenterVibrancyEffect устарело и заменено новыми свойствами WidgetPrimaryVibrancyEffect или WidgetSecondaryVibrancyVibrancyEffect. Кроме того, мини-приложения теперь содержат свойство NCWidgetDisplayMode , позволяющее разработчику описать доступное содержимое и позволит пользователю развернуть и свернуть содержимое.

Дополнительные сведения см . в руководстве по улучшению мини-приложения поиска и начального экрана.

Дополнительные изменения платформы

Помимо основных изменений и дополнений, перечисленных выше, Apple сделала много дополнительных дополнительных дополнительных изменений платформы в iOS 10.

Дополнительные сведения см. в руководстве по дополнительным изменениям платформы.

Устаревшие интерфейсы API

В iOS 10 не рекомендуется использовать следующие API:

Полный список нерекомендуемых вариантов см. в документации по API iOS 10.0 в iOS 9.3.