>  기사  >  백엔드 개발  >  오류 org.freedesktop.DBus.Error.UnknownMethod: 알 수 없거나 잘못된 메서드 'Notify'

오류 org.freedesktop.DBus.Error.UnknownMethod: 알 수 없거나 잘못된 메서드 'Notify'

PHPz
PHPz앞으로
2024-02-06 08:00:171209검색

错误 org.freedesktop.DBus.Error.UnknownMethod:未知/无效方法“Notify”

질문 내용

Godbus를 사용하여 알림 서버를 만들려고 하는데 서버 개체를 dbus로 올바르게 내보낼 수 없고 dbus는 내 introspection xml만 인식합니다. 나는 그것을 구현하기 위해 https://specations.freedesktop.org/notification-spec/notification-spec-latest.html을 따랐습니다. 또한 Godbus 저장소에서 _example/server.go를 사용하고 있는데, 아래 제공된 서버 코드에서 이를 확인할 수 있습니다. 서버 코드는 다음과 같습니다:

으아아아

이제 문제는 클라이언트가 introspection xml에 액세스할 수 있더라도:

으아아아

서버 코드에 작성한 org.freedesktop.notifications 메소드를 사용할 수 없습니다. 예를 들어, 알 수 없음/유효하지 않음 알림은 모든 메소드에 대해 동일합니다.

으아아아

또한 qdbusviewer에서 메소드를 실행하려고 하면 "인터페이스 org.freedesktop.notifications의 /org/freedesktop/notifications 경로에서 x 메소드를 찾을 수 없습니다"라는 메시지가 나타납니다.

내가 시도한 것:

  1. dbus가 실행 중인지 확인하세요
  2. 내 서버가 실행 중인지 확인하세요
  3. dbus 서비스와 컴퓨터도 다시 시작해 보았습니다
  4. notificationserver 인스턴스(서버)가 전혀 내보내지지 않는 것 같은데 이유를 모르겠습니다

정답


이렇게 하면 됩니다. 당신은 두 가지 실수를 저질렀습니다:

  1. com.antarctica.notification
  2. func(s *알림서버)

이름으로 "org.freedesktop.notifications"를 요청해야 하며 함수에서 포인터를 사용할 수 없습니다.

  1. org.freedesktop.notifications
  2. func(알림 서버)
  3. (성찰할 필요도 없어요)
으아아아

위 내용은 오류 org.freedesktop.DBus.Error.UnknownMethod: 알 수 없거나 잘못된 메서드 'Notify'의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 stackoverflow.com에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제