Configurable Publisher Registry ライブラリを使用すると、カスタム テレメトリー パブリッシャーを作成し、Configurable Publisher Registry を介してテレメトリー サービスに登録できます。このライブラリは、基盤となる Binder インターフェースとデータのシリアル化 / デシリアル化を抽象化します。
API サーフェスの概要
このライブラリは、基盤となる構成可能なパブリッシャー レジストリとやり取りするための言語固有のインターフェースを Java と Rust で提供します。このライブラリは、次の領域を担当します。
- パブリッシャーの定義: パブリッシャーの動作を定義するための Java の基本クラスまたは Rust のトレイトを提供します。
- メタデータの定義: パブリッシャーの名前や、公開されたメッセージを定義する protobuf
FileDescriptorSetなど、パブリッシャーを記述します。詳細については、自己記述型メッセージをご覧ください。Java を使用する場合は、Java protobuf 記述子ジェネレータ ツールを使用して、protobuf 記述子メタデータを生成できます。 - データ生成: サブスクリプション ベースまたはオンデマンドでデータを生成するロジックを処理します。
- 構成の処理: データの生成時に指標キャンペーンによって構成されたオプションの構成引数を処理します。
- メタデータの定義: パブリッシャーの名前や、公開されたメッセージを定義する protobuf
- データのエンコードとデコード: メッセージと構成をワイヤ形式に変換するメカニズムを提供します。
- コーデック: データのシリアル化と逆シリアル化のための組み込みコーデックとカスタム コーデックが含まれます。
- パブリッシャーの登録とライフサイクル: パブリッシャーとテレメトリー サービス間の接続を管理します。
詳細なサンプルと、完全なライフサイクルを示すコンパイル可能な完全なアプリケーションについては、ソースツリーのそれぞれの README.md ファイルをご覧ください。
Java ライブラリ:
system/software_defined_vehicle/telemetry/sdk/java/configurable_publisher_registry/README.mdJava サンプル:
samples/telemetry/publishers/java/sample_ivi_sdk_publisher/README.mdRust ライブラリ:
system/software_defined_vehicle/telemetry/sdk/rust/configurable_publisher_registry/README.mdRust のサンプル:
samples/telemetry/publishers/rust/sample_getter_publisher/README.md