Расширение приложения за счет служб, расширений и пакетов

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

Сценарий Пакет ресурсов Пакет ресурсов Дополнительный пакет Плоский пакет Расширение приложения Служба приложений Потоковая установка
Сторонние подключаемые модули кода ✔️
Подключаемые модули кода в процессе ✔️
Ресурсы по взаимодействию с пользователем (строки и изображения) ✔️ ✔️ ✔️ ✔️ ✔️
Содержимое по запросу
(например, дополнительные уровни)
✔️ ✔️ ✔️
Отдельные лицензирования и приобретения ✔️ ✔️ ✔️
Покупка в приложении ✔️ ✔️
Оптимизация времени установки ✔️ ✔️ ✔️ ✔️
Уменьшение используемого места на диске ✔️ ✔️
Оптимизация упаковки ✔️ ✔️ ✔️
Ускорение публикации ✔️ ✔️ ✔️ ✔️

Описания сценария (строки в таблице выше)

Сторонние подключаемые модули

Код, который можно скачать из магазина и запускать из вашего приложения. Например, расширения браузера Microsoft Edge.

Подключаемые модули кода в процессе

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

Ресурсы по взаимодействию с пользователем (строка и изображения)

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

Содержимое по запросу

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

Отдельные лицензирования и приобретения

Возможность получать лицензии и содержимое, независимо от приложения.

Покупка в приложении

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

Оптимизация времени установки

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

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

Оптимизация упаковки Оптимизирует процесс упаковки приложений для крупномасштабных или сложных приложений.

Ускорение публикации. Минимизация времени, необходимого для публикации приложения в Store, в локальном общем ресурсе или на веб-сервере.

Описание технологии (столбцы в таблице выше)

Пакет ресурсов

Пакеты ресурсов — это ресурс только для пакетов, которые позволяют вашему приложению адаптироваться к нескольким размерам экрана и системным языков. Пакет ресурсов ориентироваться язык пользователя, системы масштабирования и возможности DirectX, позволяя приложению адаптировать к различным пользовательских сценариев. Несмотря на то, что пакет приложения может содержать несколько ресурсов, ОС будет скачивать только соответствующие ресурсы на устройстве пользователя, сохранение пропускной способности и места на диске.

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

Дополнительный пакет

Дополнительные пакеты используются для дополнения или расширить функциональные возможности исходного пакета приложения. Это возможно, чтобы опубликовать приложение, следуют публикации дополнительные пакеты позже, или для публикации приложения и дополнительные пакеты одновременно. Расширяя через дополнительный пакет приложения, у вас есть преимущества распространения и монетизации содержимое в виде пакета отдельное приложение. Обычно дополнительные пакеты предназначены для разработки разработчиком исходного приложения, так как они выполняются с помощью удостоверения главного приложения (в отличие от расширения приложений). В зависимости от того, как определить дополнительный пакет вы можете загрузить кода, ресурсы, или код и ресурсы из пакета необязательно для главного приложения. Если вам нужно улучшить приложение с помощью содержимого, которое можно монетизировать, лицензировать и распространять отдельно, то вам могут быть доступны дополнительные пакеты. Подробные сведения о реализации в разделе дополнительные пакеты и связанные разработки.

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

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

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

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

Приложения не удается загрузить код из расширения. Если вам требуется выполнение кода, рассмотрите возможность службы приложений.

Служба приложений

Службы приложений Windows обеспечивают обмен данными между приложениями, позволяя приложению UWP предоставлять службы другому универсальному приложению для Windows. Службы приложений позволяют создавать службы без пользовательского интерфейса, которые приложения могут вызывать на одном устройстве и, начиная с Windows 10 версии 1607, на удаленных устройствах. В разделе Создание и использование службы приложения сведения.

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

Установка потоковой передачи приложений UWP

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

См. также:

Создание и использование службы приложений
Вводные сведения о пакетах ресурсов
Создание пакета с использованием макета упаковки
Разработка дополнительных пакетов и связанных наборов
Разработка пакетов ресурсов и сворачивание пакета ресурсов
Потоковая установка приложений UWP
Пакеты приложений на основе плоских пакетов
Пространство имен Windows.ApplicationModel.AppService
Пространство имен Windows.ApplicationModel.Extensions