問題タブ [gdbus]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
1232 参照

c++ - gdbus-codegen スケルトンの使用時に D-Bus プロパティを検証する方法

gdbusと を使用して D-Bus でサービスを作成していますgdbus-codegen

イントロスペクションは次のとおりです。

私はgdbus-codegenこのように実行しています:

そして、私の main.cpp は次のようになります。

これは期待どおりに機能し、次を使用してプロパティを設定および取得できます。

問題:

プロパティの設定を同期的に検証し、失敗した場合にエラーを返すことができるようにしたいと考えています。gdbus-codegen生成されたコードを使用してこれをどのように達成できますか?

PS:

コードが漏れており、通常は本番環境に対応していません。私は今のところそれで大丈夫です:-)

編集

調査を続けた結果、D-Bus プロパティは基になるGObjectプロパティ機能を使用しているようです。コードによってすべてが設定されている場合、カスタムバリデーターをインストールすることは可能gdbus-codegenですか?

0 投票する
1 に答える
702 参照

dbus - bluez 5.35 の gdbus オブジェクト (/org/bluez/hci1) にインターフェースを追加するには?

私はアプリケーション開発に bluez5.35 を使用していますが、デバッグ中に /org/bluez/hci1 が 8 つのインターフェースしか提供しないことがわかりました (org.bluez.Adapter1、CyclingSpeedManager1、HeartRateManager1、Media1、NetworkServer1、ThermeterManager1、DBus.Introspectable、DBus.プロパティ)。

既存のセットアップに関連付けられていないインターフェース (org.bluez.Network1 など) をさらにいくつか使用したいと考えています。以下は私のセットアップのスナップショットです(スナップショットが添付されています)。

/org/bluez/hci を使用して org.bluez.Network1 インターフェースを追加するにはどうすればよいですか? 変更する必要がある構成ファイルはありますか? またはこの目標を達成するための他の方法はありますか?

既存の bluez インターフェイスのスナップショット

0 投票する
1 に答える
288 参照

dbus - 各 dbus API の代替 GDBus API は何ですか?

たとえば、g_dbus_connection_setup_with_g_main関数を使用しました。しかし、ここで、この関数は非推奨であることがわかりました。しかし、どの機能が機能を代替できるかについての情報はありません。その情報はどこで確認できますか?

0 投票する
1 に答える
239 参照

c - GDBus に複数の MPRIS プレーヤーを登録する

複数のメディア プレーヤーを glib に登録したいと考えています。最小限の(非)動作例はこちらです。仕様を理解できるように、1 つの名前で多くのオブジェクトをエクスポートする必要がありますが、これは/org/mpris/MediaPlayer2奇妙です。