Spec-Zone .ru
спецификации, руководства, описания, API

Библиотека разработчика Mac

Разработчик

Руководство по программированию расширения приложения

PDF
На этой странице

Увеличение расширений приложения Ваше влияние

Запускаясь в iOS 8.0 и OS X v10.10, расширение приложения позволяет Вам расширить пользовательскую функциональность и содержание вне Вашего приложения и сделать его доступным для пользователей, в то время как они используют другие приложения или систему. Вы создаете расширение приложения для включения определенной задачи; после того, как пользователи получают Ваше расширение, они могут использовать его для выполнения той задачи во множестве контекстов. Например, если Вы обеспечиваете расширение, позволяющее совместно использовать к Вашему социальному веб-сайту совместного использования, пользователи могут использовать его для регистрации комментария при работе в сети. Или если Вы обеспечиваете расширение, выводящее на экран текущие спортивные очки, пользователи могут поместить его в Центр Уведомления так, чтобы они могли получить последние очки, когда они открывают представление Today. Можно даже создать расширение, обеспечивающее пользовательскую клавиатуру, которую пользователи могут использовать вместо системной клавиатуры iOS.

Существует несколько типов расширений приложения

iOS и OS X определяют несколько типов расширений приложения, каждое из которых связывается к области системы, такой как совместное использование, Центр Уведомления и клавиатура iOS. Системную область, поддерживающую расширения, вызывают точкой расширения. Каждая точка расширения определяет политики использования и обеспечивает APIs, который Вы используете при создании расширения для той области. Вы выбираете точку расширения для использования на основе функциональности, которую Вы хотите обеспечить.

Таблица 1-1 перечисляет точки расширения в iOS и OS X и дает пример задач, которые Вы могли бы включить в расширении приложения для каждой точки расширения.

Таблица 1-1Extension точки в iOS и OS X

Точка расширения

Функциональность расширения типового приложения

Сегодня (iOS и OS X)

Получите быстрое обновление или выполните быструю задачу в представлении Today Центра Уведомления

(Сегодня расширение вызывают виджетом),

Доля (iOS и OS X)

Отправьте на веб-сайт совместного использования или содержание доли с другими

Действие (iOS и OS X; UI и варианты неUI)

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

Фотография редактируя (iOS)

Отредактируйте фотографию или видео в фото приложении

Синхронизация средства поиска (OS X)

Существующая информация о синхронизации файлов утверждает непосредственно в Средстве поиска.

Провайдер документа (iOS; UI и варианты неUI)

Обеспечьте доступ к и управляйте репозиторием файлов.

Пользовательская клавиатура (iOS)

Замените системную клавиатуру iOS пользовательской клавиатурой для использования во всех приложениях

Смотрите приложение (iOS)

Обеспечьте приложение, взгляд или уведомление UI для Часов Apple, как описано в Руководстве по программированию Часов Apple.

Поскольку система определяет определенные области для расширений приложения, важно выбрать область, которую лучшие соответствия функциональность Вы хотите поставить. Например, если Вы хотите создать расширение, включающее опыт совместной работы, используйте точку расширения Доли, начиная с шаблона Share Extension Xcode.

XCode и App Store помогают Вам создать и поставить расширения приложения

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

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

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

Для распределения расширений приложения пользователей Вы представляете содержание приложения App Store. Когда пользователь устанавливает Ваше содержание приложения, расширения, которые это содержит, также установлены.

После установки расширения приложения пользователь должен принять меры для включения его. Часто, пользователи могут включить расширение в контексте их текущей задачи. Если Ваше расширение Сегодня виджет, например, пользователи могут отредактировать представление Today в Центре Уведомления для включения расширения. В других случаях пользователи могут использовать Настройки (в iOS) или Установки системы (в OS X), чтобы включить и управлять расширениями, которые они устанавливают.

Пользователи испытывают расширения приложения в различных контекстах

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

Пользователи открывают Ваше расширение приложения путем взаимодействия с некоторым предоставленным системой пользовательским интерфейсом (UI). Например, пользователь получает доступ к расширению Доли путем активации предоставленной системой кнопки Share в приложении и выбора расширения из списка, это выведено на экран.

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

Чтобы дать пользователям плавный переход в Ваше расширение приложения, Вы обычно хотите сбалансировать свой индивидуальный проект с UI, это связано с точкой расширения. Например, это - хорошая идея заставить Ваш виджет быть похожим, что это принадлежит представления Today. Точно так же в Вашей фотографии, Редактируя расширение, это работает хорошо для создания UI, гармонирующего с фотографиями в iOS.