1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/openharmony-ability_dmsfwk_lite

Клонировать/Скачать
README.md 5.8 КБ
Копировать Редактировать Web IDE Исходные данные Просмотреть построчно История
gitlife-traslator Отправлено 29.11.2024 09:22 00d50b9

dmsfwk_lite

Введение

Компонент Lite Distributed Ability Manager Service Framework (dmsfwk_lite) предоставляет возможность запуска Функциональных Возможностей (ФА) на различных устройствах и поддерживает совместную работу приложений в распределённых сценариях. На следующем рисунке показана архитектура dmsfwk_lite.

Структура каталогов

В таблице ниже описана структура каталогов исходного кода dmsfwk_lite.

Таблица 1. Структура основных каталогов исходного кода

Каталог Описание
dmsfwk_lite Реализация dmsfwk_lite

Структура каталогов исходного кода dmsfwk_lite выглядит следующим образом:

├── BUILD.gn
├── include
│  ├── dmslite.h        # Заголовочный файл для открытых API, предоставляемых dmsfwk_lite
│  ├── dmslite_check_remote_permission.h     # Заголовочный файл модуля управления разрешениями dmsfwk_lite
│  ├── dmslite_famgr.h                       # Заголовочный файл модуля управления ФА dmsfwk_lite
│  ├── dmslite_inner_common.h                # Внутренний общий файл dmsfwk_lite
│  ├── dmslite.h                             # Заголовочный файл реализации службы dmsfwk_lite
│  ├── 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++.
  • Сетевая среда: Локальные и удалённые устройства должны находиться в одной локальной сети и иметь возможность пинговать друг друга.
  • Операционная система: OpenHarmony.
  • Удалённый запуск:
    • Только ФА могут быть запущены удалённо.
    • Перед удаленным запуском убедитесь, что распределённая сеть между локальным и удалённым устройствами работает успешно. В противном случае удалённый запуск завершится неудачно.

Использование

  • Сборка

Код dmsfwk_lite хранится в следующем каталоге:

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, который будет передан методу startAbility.
Want want = new Want();
ElementName name = new ElementName(remote_device_id, "ohos.dms.remote_bundle_name", "remote_ability_name"); 
want.setElement(name); // Добавьте информацию о целевой ФА в экземпляр Want.
want.setFlags(Want.FLAG_ABILITYSLICE_MULTI_DEVICE); // Установите флаг многоустройственного запуска. Если этот флаг не установлен, удалённый запуск ФА будет недоступен.

// Запустите удалённую ФА на удалённом устройстве.
startAbility(want); // Запустите указанную ФА на основе параметра want. Если имя и тип параметра want отличаются от тех, которые используются в DevEco Studio, используйте параметры имени и типа в DevEco Studio.
  • Предварительные условия

Целевая ФА с указанным именем пакета должна быть установлена на удалённом устройстве.

  • Выполнение (на примере запуска ФА)

Вызовите метод startAbility на локальном устройстве, чтобы запустить целевую ФА на удалённом устройстве.

Опубликовать ( 0 )

Вы можете оставить комментарий после Вход в систему

1
https://api.gitlife.ru/oschina-mirror/openharmony-ability_dmsfwk_lite.git
git@api.gitlife.ru:oschina-mirror/openharmony-ability_dmsfwk_lite.git
oschina-mirror
openharmony-ability_dmsfwk_lite
openharmony-ability_dmsfwk_lite
master