HarmonyOS 分散アプリケーション フレームワークの詳細な解説

HarmonyOS 分散アプリケーション フレームワークの詳細な解説

[[439631]]

詳細については、以下をご覧ください。

51CTOとHuaweiが共同で構築したHongmengテクノロジーコミュニティ

https://harmonyos..com

背景

ますます多くのデバイスがスマートになるにつれて、マルチデバイス シナリオでのアプリケーション開発では、複数のデバイスの形態の違い (画面のサイズ、解像度、形状が異なり、ボタン、タッチ スクリーン、キーボード、音声、ジェスチャなどのさまざまな操作方法) と、複数のデバイスの機能の違い (数百 KB から GB に及ぶメモリを搭載したデバイス) という課題に直面します。

HarmonyOS は、Internet of Everything 時代の新しい分散型オペレーティング システムとして、上記の課題を解決することができます。これは、HarmonyOS の分散アプリケーション フレームワークのおかげです。これら複数のデバイスがスーパーターミナルを形成し、各デバイスの機能を最大限に活用することで、マルチデバイスおよびマルチターミナルのコラボレーションとターミナル間の移行を実現し、Internet of Everythingの基盤を築きます。

HarmonyOS の分散アプリケーション フレームワークについては、次の章で詳しく説明します。

1. HarmonyOS ユーザープログラム


HarmonyOS システム上のアプリケーションは、HarmonyOS アプリケーションとアトミック サービスに分かれています。 HarmonyOS アプリケーションは、従来のアプリケーションと同様に、アプリ ストアからダウンロードしてインストールする必要があります。アトミック サービスは独立した操作入口を持ち、インストールは必要なく、特定の機能を実装します。 WeChat アプレットよりも強力です。 HarmonyOS のクロスデバイス、分散機能、アプリケーションと組み合わせることで、この 2 つには無限の機能が備わります。

開発者の観点から見ると、HarmonyOS の基本コンポーネントは 3+1 に分かれています。3 は 3 つの機能を表します。つまり、PageAbility: ユーザー インターフェイスの表示を担当し、DataAbility: データ管理を担当し、外部に統一されたデータ アクセス抽象化を提供し、ServiceAbility: バックグラウンドでタスクを実行を担当します。 1 は AbilityForm サービス カードを表します。重要な情報や操作を前面に配置して直接的なサービスを実現し、経験レベルを下げることができます。 HarmonyOS 上でアプリケーションを開発するには、3+1 のコンポーネントが組み合わされ、そのパッケージ形式は HAP (HarmonyOS Ability Package) です。 HAP はインターフェースの有無によって、FA (Feature Ability) と PA (Particle Ability) の 2 種類に分けられます。

2. HarmonyOS分散アプリケーションフレームワークの全体的なアーキテクチャ


アプリケーション フレームワークの観点から見ると、システムは次の 5 つのレイヤーに分かれています。

下層ソフトウェア

カーネル、HAL、ソフト バスを含むこのレイヤーは開発者によって使用されず、通常は開発者とユーザーに黙ってサービスを提供します。

基本サービス層

分散スケジュール管理、分散データ管理、分散ハードウェア管理、分散権限管理などが含まれます。

コアサービス層

グローバルパッケージ管理や分散運用管理などが含まれます。グローバル パッケージ管理: HarmonyOS 上のアプリケーションは単一のデバイスに限定されなくなり、パッケージ管理には仮想端末全体のすべてのデバイスも含まれます。分散運用管理は、コラボレーション フレームワーク、移行フレームワーク、サービス カード フレームワークなどのアプリケーションの動的なランタイム管理を担当します。

アプリケーション インターフェース レイヤー

これは、開発者がアプリケーションを開発するためにシステムによって提供されるインターフェース層です。システムの基盤となる実装がどれほど複雑であっても、開発者に提供されるインターフェースは可能な限りシンプルです。このレイヤーには、前述の基本コンポーネントと、ACE (Ability Cross-platform Environment) フレームワークが含まれます。マルチデバイスインタラクションモデルでは、一貫性が非常に重要です。 UI の観点からは、UI フレームワークを大画面、小画面、縦長画面、正方形画面、横長画面などに適応させる方法。この一貫性は、ACE フレームワークによって大きくサポートされています。

ユーザープログラム層

このレイヤーは、ユーザーが使用するために開発者が開発したアプリケーションです。

3. HarmonyOS分散アプリケーションフレームワークの操作ビュー


これは実行時のアプリケーション フレームワークのビューです。実行中、各アプリケーションは独立したサンドボックス内にあり、互いに分離され、互いに影響を与えないため、システムのセキュリティが確保されます。システムには、プロセスインキュベーションを担当するAppSpawn、プロセス管理を担当するAppMS、パッケージ管理を担当するBMS(Bundle Manager Service)、基本コンポーネント管理を担当するAMS(Ability Manager Service)、分散ビジネスを担当するDMS(Distributed Manager Service)が含まれます。専用の基盤サービスです。当社の上位サービスの多くは分散ビジネスであり、接続されたビジネスを統合するためにこれを使用します。その主な役割には、分散タスク管理、デバイス間のステータス、データ同期などがあります。

4. HarmonyOS分散操作:複数端末の連携


マルチ端末連携は、当社のアプリケーションが複数の端末でビジネスを完了できるようにすることです。現時点では、システム フレームワークはアプリケーションに 3 つの機能を提供します。最初のクロスデバイス コンポーネントが開始され、この機能により同時実行が完了できます。 2つ目は、接続チャネルを介したビジネスコラボレーションを可能にするクロスデバイスデータ伝送です。 3 つ目は、分散共有オブジェクトを使用すると、2 つ以上のデバイス間で状態を自動的に同期できることです。

右上隅のコード スニペットは接続を強調しています。実際、システムレベルで接続を提供することは自然なことのように思えますが、舞台裏では非常に複雑です。 HarmonyOS 上のデバイスは、小型から中型、大型までさまざまな種類のデバイスにわたります。チップの種類が異なり、接続方法も異なります。 Wi-Fi、Bluetooth などが備わっている場合があります。このような接続はワイヤレスであるため、干渉を受けることがよくあります。このタイプの接続では、基盤となるネットワーク ジッターも除去する必要があります。

マルチターミナルコラボレーションフレームワークに基づいて、開発者は複数のデバイスにまたがるアプリケーションを開発できます。たとえば、パッド上でビデオを視聴するためのアプリケーションを開発し、携帯電話を使用してビデオにテキストコメントや返信をしたり、端末間でビジネスを行ったりすることで、同時実行性、コラボレーション、補完性を実現できます。

5. HarmonyOS 分散操作: クロスエンド移行


HarmonyOS 上のタスク管理センターでは、スーパーターミナル上のすべてのタスクを一元的に管理できます。このタスク管理センターを使用すると、タスクを携帯電話から大画面に簡単に移行できます。このプロセスは、開発者とシステム間の接続です。システム自体はタスク管理センターとアプリケーションを通じてステータスを取得し、アプリケーション自体はコールバックを通じてシステムにステータスを渡します。開発者はシステム間で渡されるステータスについて心配する必要がありません。移行フレームワークを使用すると、ユーザーに対して継続的かつ一貫した効果を生み出すことができます。

6. HarmonyOSの基本アーキテクチャ: 分散ウィンドウ管理


マルチターミナルコラボレーションやクロスターミナル移行に関係なく、ユーザーがタスクセンターにドラッグすると、システムはドラッグされたタスクウィンドウをレンダリング用の仮想ウィンドウにドラッグし、レンダリング結果をターゲットプロキシウィンドウに渡して埋めます。ビデオストリームの送信だけでなく、ユーザーのインタラクションイベントも元のアプリケーションに送り返されます。システムにはマルチモードの統合インタラクション モジュールがありますが、アプリケーションは実際にはそれを感知できず、イベントがこちら側から来たのか、それとも向こう側から来たのかを知りません。

7. HarmonyOSの基本アーキテクチャ:分散ハードウェア


今日のデバイスには、カメラ、マイク、さまざまなセンサーなど、多くのハードウェアと周辺機器が搭載されています。たとえば、時計は睡眠、毎日の歩行、その他の健康状態を監視できます。これらのデバイスが 1 つのデバイスでのみ使用できるように制限されている場合、それは大きな制限となります。したがって、分散環境でのプログラミングでは、システムはハードウェアの観点から 2 つの機能を提供します。 1 つ目は、ハイパーターミナルに接続されたすべてのハードウェア周辺機器をグローバルにプールするグローバル仮想化です。これにより、開発者は、接続を自分で確立したり、ハードウェア使用権の交換を自分で管理したり、二次認証を要求したりすることなく、端末間の通話を行うことができます。これは、ハードウェアがプライバシーに関係することが多く、システムが統合されたグローバル仮想化を通じてこれらの基礎となる機能を開放しているためです。

2番目は自動ハードウェア追従です。当社のソフトウェアは 1 つのデバイスに限定されません。あるデバイスから別のデバイスに移行される可能性があります。たとえば、この時点でサウンドを再生している場合や、この時点で他のユーザーとビデオチャットしている場合、これらのハードウェアは自動的に移行されます。このシステムは、アプリケーション フレームワークと基盤となる分散ハードウェアを組み合わせることでこれを実現し、開発者の負担を軽減します。

詳細については、以下をご覧ください。

51CTOとHuaweiが共同で構築したHongmengテクノロジーコミュニティ

https://harmonyos..com

<<:  クラウドネイティブのインメモリデータベースであるTairは、ユーザーエクスペリエンスの最適化に役立ちます。

>>:  Huyaの「特別な目的のための特別な図書館」の海外ライブストリーミング戦略

推薦する

店舗のコンバージョン率を向上させるためにタオバオの商品ページを設定する方法

顧客が広告からあなたのストアにアクセスすると、商品ページが表示されます。この時点で、顧客には 2 つ...

2020 TECHO PARK 開発者会議セキュリティフォーラムで最先端のセキュリティ技術を探りましょう。

デジタル経済の波は止められない勢いで世界を席巻しています。クラウドコンピューティング、5G、AI、ビ...

Fanli.comは、オンラインとオフラインの統合リベートプラットフォームを構築するためにシリーズBで2,000万ドルの資金調達を獲得しました。

プラットフォーム型電子商取引企業JD.comの上場や、今年下半期に予定されているAlibabaの上場...

簡単な議論:百度ランキングの浮動状況をどう解決するか

最近、誰もが自分のウェブサイトに大きな変化が起きたと感じています。最も明らかな変化は、誰もが最も懸念...

SEO: テクノロジーへの果てしない追求と執着を捨てる

SEOの謎が解明されて以来、SEOという言葉はもはや専門用語ではなくなり、Baiduの検索エンジン最...

キーワードランキングに影響を与える致命的な要因: メタタグとキーワード密度

SEO 業界では、キーワード ランキングは昔から不朽の神話です。企業が自社の Web サイトを Go...

SUSE、コンテナ化および仮想化ワークロード向けに構築された軽量 OS、SUSE Linux Enterprise Micro 5.2 をリリース

最近、コンテナ化および仮想化されたワークロード向けに特別に構築された軽量で安全なオペレーティング シ...

個人ウェブサイトが生き残りたいなら、次の5つの点に注意する必要があります

大手検索エンジンがインターネットのスパムサイトを一掃するにつれ、特に一部の個人サイトにとって、ランキ...

なぜ www なしの Baidu スナップショットの方がランクが高いのでしょうか?

最近、Baidu ランキングの Web ページ スナップショットのほとんどに www がないことが判...

IBMとPitney Bowesがハイブリッドクラウド位置情報サービスで提携

IBM (NYSE: IBM) と Pitney Bowes (NYSE: PBI) は本日、コード...

Zgovps 限定版日本 IIJ ライン VPS レビュー

Zgovpsは、日本のIIJ回線VPSの特別版を2つ別々にリリースしており、どちらも年払いとなってい...

alphavps-30 ユーロ/年 VPS、4g メモリ/4 コア/35g SSD/5 コンピュータ ルーム

ブルガリアのホスティング プロバイダー alphavps.bg は最近、KVM VPS、OpenVZ...

stablehost: cPanel ホスティングが 80% オフ、最低 $10.8/年、米国、シンガポールなどに 8 つのデータセンターあり。

老舗の仮想ホスト販売業者である Stablehost は現在、cpanel パネルを備えた仮想ホスト...

ウェブマスターネットワークからの毎日のレポート:百度が旅行ウェブサイトの価格競争を開始するためにクラウドサービスを開始

Baidu、開発者にAPIを提供するクラウドサービスプラットフォームを正式に開始9月3日午前のニュー...