Лёгкий компонент для управления распределёнными модулями
Введение
Лёгкий компонент для управления распределёнными модулями отвечает за запуск FA на разных устройствах и обеспечивает совместную работу приложений в распределённой среде. Лёгкий компонент для управления распределёнными модулями состоит из следующих частей (см. рисунок):
Исходный код лёгкого компонента для управления распределёнными модулями организован в следующую структуру каталогов:
| Таблица 1. Основная структура каталогов исходного кода | | --- | --- | | Название | Описание | | dmsfwk_lite | Лёгкий компонент для управления распределёнными модулями |
Структура каталогов исходного кода лёгкого компонента для управления распределёнными модулями выглядит следующим образом:
├── BUILD.gn
├── include
│ ├── dmslite.h # Интерфейс лёгкого компонента для управления распределёнными модулями
│ ├── dmslite_check_remote_permission.h # Модуль управления разрешениями лёгкого компонента для управления распределёнными модулями
│ ├── dmslite_famgr.h # Модуль управления FA лёгкого компонента для управления распределёнными модулями
│ ├── dmslite_inner_common.h # Внутренний общий файл лёгкого компонента для управления распределёнными модулями
│ ├── dmslite.h # Реализация сервиса лёгкого компонента для управления распределёнными модулями
│ ├── dmslite_log.h # Модуль логирования лёгкого компонента для управления распределёнными модулями
│ ├── dmslite_parser.h # Модуль анализа распределённых сообщений лёгкого компонента для управления распределёнными модулями
│ ├── dmslite_tlv_common.h # Модуль разбора данных в формате TLV лёгкого компонента для управления распределёнными модулями
│ └── dmslite_session.h # Модуль обмена данными между устройствами лёгкого компонента для управления распределёнными модулями
├── readme.md
├── LICENSE
├── source
├── distributed_schedule_service.c
├── dmslite.c
├── dmslite_check_remote_permission.c
├── dmslite_famgr.c
├── dmslite_msg_parser.c
├── dmslite_tlv_common.c
└── dmslite_session.c
Ограничения
Язык: C/C++.
Сетевая среда: Устройства должны находиться в одной локальной сети, а главное и подчинённое устройства должны иметь возможность обмениваться данными по протоколу ping.
Операционная система: OpenHarmony.
Ограничения и условия запуска удалённо:
— Поддержка удалённого запуска FA. — Удалённый запуск возможен только после успешного создания распределённой сети между главным и подчинённым устройствами.
Использование
Код лёгкого компонента для управления распределёнными модулями находится в каталоге foundation/ability/dmsfwk_lite. При компиляции для конкретной платформы необходимо заранее указать целевую платформу с помощью команды hb build.
Создайте объект Want с параметрами, необходимыми для запуска удалённого устройства, включая идентификатор удалённого устройства, имя пакета, имя класса возможностей и флаг Want.FLAG_ABILITYSLICE_MULTI_DEVICE для включения распределённого режима.
import ohos.aafwk.ability.Ability;
import ohos.aafwk.content.Want;
import ohos.bundle.ElementName;
// Создание объекта Want
Want want = new Want();
ElementName name = new ElementName(remote_device_id, "ohos.dms.remote_bundle_name", "remote_ability_name");
want.setElement(name); // Добавление информации о запускаемой FA в Want
want.setFlags(Want.FLAG_ABILITYSLICE_MULTI_DEVICE); // Установка флага распределённого запуска
// Запуск удалённой FA
startAbility(want); // Запуск указанной FA согласно параметрам Want
На подчинённом устройстве должен быть установлен пакет с соответствующей возможностью.
Запустите программу на главном устройстве, вызвав метод startAbility, чтобы запустить удалённую FA.
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Опубликовать ( 0 )