構成可能な Publisher Registry ライブラリ

Configurable Publisher Registry ライブラリを使用すると、カスタム テレメトリー パブリッシャーを作成し、Configurable Publisher Registry を介してテレメトリー サービスに登録できます。このライブラリは、基盤となる Binder インターフェースとデータのシリアル化 / デシリアル化を抽象化します。

API サーフェスの概要

このライブラリは、基盤となる構成可能なパブリッシャー レジストリとやり取りするための言語固有のインターフェースを Java と Rust で提供します。このライブラリは、次の領域を担当します。

  • パブリッシャーの定義: パブリッシャーの動作を定義するための Java の基本クラスまたは Rust のトレイトを提供します。
    • メタデータの定義: パブリッシャーの名前や、公開されたメッセージを定義する protobuf FileDescriptorSet など、パブリッシャーを記述します。詳細については、自己記述型メッセージをご覧ください。Java を使用する場合は、Java protobuf 記述子ジェネレータ ツールを使用して、protobuf 記述子メタデータを生成できます。
    • データ生成: サブスクリプション ベースまたはオンデマンドでデータを生成するロジックを処理します。
    • 構成の処理: データの生成時に指標キャンペーンによって構成されたオプションの構成引数を処理します。
  • データのエンコードとデコード: メッセージと構成をワイヤ形式に変換するメカニズムを提供します。
    • コーデック: データのシリアル化と逆シリアル化のための組み込みコーデックとカスタム コーデックが含まれます。
  • パブリッシャーの登録とライフサイクル: パブリッシャーとテレメトリー サービス間の接続を管理します。

詳細なサンプルと、完全なライフサイクルを示すコンパイル可能な完全なアプリケーションについては、ソースツリーのそれぞれの README.md ファイルをご覧ください。

  • Java ライブラリ: system/software_defined_vehicle/telemetry/sdk/java/configurable_publisher_registry/README.md

  • Java サンプル: samples/telemetry/publishers/java/sample_ivi_sdk_publisher/README.md

  • Rust ライブラリ: system/software_defined_vehicle/telemetry/sdk/rust/configurable_publisher_registry/README.md

  • Rust のサンプル: samples/telemetry/publishers/rust/sample_getter_publisher/README.md