この質問に対する答えをいくつかの場所で検索しましたが、一貫した解決策を見つけることができず、古すぎて不明確なものもあります。
実行時に dbus のインターフェイス パスが生成されるクラスがあるため、適切なインターフェイスを使用してメソッドをエクスポートする必要があります。次に例を示します。
サービスの 1 つのインスタンスは interfacebr.example.MyInterface.Number1
で dbus を開始し、サービスの 2 つ目のインスタンスは で dbus を開始するbr.example.MyInterface.Number2
ため、各メソッドのデコレーターは次のようになります。
br.example.MyInterface.Number1
; と
br.example.MyInterface.Number2
のような静的デコレータではこれを機能させることはできません@dbus.service.method('com.example.MyInterface.Number1')
。これらは異なるためです。
Pythonを使用して実行時にメソッドをdbusにエクスポートするにはどうすればよいですか?