Веб-расширение Safari не может отправить собственное сообщение

Я пытаюсь создать веб-расширение Safari для своего собственного приложения. Я хочу иметь всплывающее окно с кнопкой, которая при нажатии будет взаимодействовать с моим собственным приложением:

          browser.runtime.sendNativeMessage({message: "Open Main App"}, function(response) {
    console.log("Received sendNativeMessage response:");
    console.log(response);
    });

Однако приложению не удается получить сообщение, отправленное веб-расширением Safari:

          func beginRequest(with context: NSExtensionContext) {

    its the function that handles all things
    then
    
    if msg.contains("Open Main App") == true {
      print("NEED TO OPEN")
      guard let url = URL(string: "player:Vacation?index=1") else {
         return
      }
      NSWorkspace.shared.open(url)
    }

Журнал Safari показал это сообщение об ошибке:

        ReferenceError: Can't find variable: browser

Что случилось?

1 ответ

Ты использовал browser.runtime.sendNativeMessageиз фонового скрипта? Вам также необходимо установить разрешение в файле манифеста. Вот так: "permissions": [ "nativeMessaging" ]

Другие вопросы по тегам