OneSignal web-push-Benachrichtigung auf safari Konfiguration funktioniert nicht

Ich bin einrichten der web-push-Benachrichtigung mit OneSignal durch das Lesen Ihre Dokumentation. Der folgende code-block ist meine Konfiguration Beispiel

<script>
    var OneSignal = window.OneSignal || [];
    OneSignal.push(["init", {
        appId: "my-app-id",
        safari_web_id: 'my-safari-web-id',
        autoRegister: false,
        notifyButton: {
            enable: true /* Set to false to hide */
        },
    }]);
</script>

Es funktioniert auf Google Chrome vs Firefox. Aber funktioniert nicht auf safari und wenn ich auf Abonnieren von Benachrichtigungen-button bekam ich die Fehlermeldung wie die folgende

OneSignal web-push-Benachrichtigung auf safari Konfiguration funktioniert nicht

Was ist falsch an meiner Konfiguration?

Ich benutze safari Version 10.0.1 (12602.2.14.0.7)



3 Replies
  1. 1

    Hier sind einige der Gründe, warum dies geschehen mag, auf Safari. Von https://github.com/OneSignal/OneSignal-Website-SDK/wiki/Safari-Registration-Bug:

    Bestellt, die am ehesten zu am wenigsten wahrscheinlich:

    1. Die Safari-Website-URL die Herkunft übereinstimmen muss, die Herkunft, die in Ihre Adresse bar. Auch wenn Ihre hosts-Datei ermöglicht, für einen alias verwenden, müssen Sie die tatsächliche Herkunft aufgeführt in der Website-URL abonnieren. Die Website-URL ist sogar groß-und Kleinschreibung.

    2. Den safari_web_id parameter muss mit dem Safari-Web-ID in der app-Plattform-Einstellungen. Stellen Sie sicher, dass es nicht überschrieben wird durch einen anderen Wert, oder dass die web -.onesignal.auto-Präfix war nicht zu übersehen, wenn Sie mit unserer automatisch generierten Zertifikat.

    3. Muss das Symbol quadratisch (Breite gleich Höhe).

    4. Stellen Sie sicher, dass Sie nicht surfen Safari in einem Privaten Fenster.

    5. Stellen Sie sicher, dass Sie nicht mit Safari auf iOS. Safari auf Windows wird nicht unterstützt. Einige Benutzer möglicherweise download Safari 5.1.7 zu testen, push-Benachrichtigungen, aber die nur Safari unterstützt, ist Safari 7.1+ auf dem Mac OS X Betriebssystem.

    6. Das Symbol DPI muss 72×72.

      Dies kann überprüft werden mit ImageMagick, mit dem Befehl identify-format „%B x %h %x x %y“ DATEIPFAD.

    7. Wenn ein benutzerdefiniertes Zertifikat verwendet wird, kann es unwirksam. Erstellen Sie die Safari-Plattform mit einem automatisch generierten Zertifikat. Kontakt OneSignal für diese.

    8. Schließlich die auto-generierte Zertifikat möglicherweise nicht ordnungsgemäß ausgeführt. Erstellen Sie die Safari-Plattform mit einem anderen auto-generierten Zertifikats. Kontakt OneSignal für diese.

  2. 0

    Versuchen, Fügen Sie den folgenden Code in die Konsole ein, und Überprüfen Sie die Fehler -, was Sie bekommen

    window.safari.pushNotification.requestPermission(OneSignal._API_URL + 'safari', OneSignal.config.safari_web_id, {app_id: OneSignal.config.appId}, function(response) {
      console.warn('pushNotification.requestPermission Safari Registration Result:', response);
    });
    

    Wenn in Ihrer Konsole sagt Push Benachrichtigung Eingabeaufforderung deaktiviert wurde
    Befolgen Sie die unten aufgeführten Schritte

    1. Gehen Vorliebe im Menü Safari
    2. Gehen Sie zu Benachrichtigungen
    3. Überprüfen Websites Zulassen Fragen für die Berechtigung zum senden von push-Benachrichtigungen ist Überprüft
  3. 0

    Können Sie OneSignal.log.setLevel(‚trace‘); trace dein problem.
    Es kann Ihnen sagen, genau das problem wie fehlt das Symbol oder der p12 ist falsch.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.