2016-06-02 9 views
1

Wenn MIDI-Zugriff überÜberprüfen Sie, ob der Zugriff auf die Web-MIDI-API bereits gewährt ist.

navigator.requestMIDIAccess({sysex: true}) 

der Benutzer den Zugang in einem modalen in Chrome und Opera zu bestätigen hat angefordert.

Gibt es eine Möglichkeit zu überprüfen, ob ein Benutzer bereits Zugriff auf MIDI erlaubt hat, ohne das Modal auszulösen?

Der Grund, warum ich das möchte, ist aus Gründen der Benutzerfreundlichkeit: Wenn ein Benutzer die Seite zum ersten Mal besucht, sollte er nicht mit einem Sicherheitsmodal begrüßt werden, wo 90% aus Gewohnheit "Blockzugriff" sofort klicken.

Der Benutzer sollte zuerst lesen, worum es geht und dann die requestMIDIAccess-Routine mit einem Knopfdruck auslösen. Er sollte das nur einmal tun müssen.

Gibt es eine Methode in der API fehlt mir oder gibt es eine Abhilfe wie das Lesen der Einträge in chrome: // settings/contentExceptions # Midi-Sysex?

Antwort

0

Ich glaube nicht, dass Ihr Benutzer aus Gewohnheit "block access" klickt, wenn Sie eine MIDI-Weblösung entwickeln. Dies ist kein "Standard" -Benutzer, sondern ein musikalischer Ingenieur.

Der Zugriff auf MIDI ist keine grundlegende Operation. Der Zugriff auf MIDI mit Sysex ist komplexer und wichtiger richtiger Zugriff. Ich möchte nicht, dass diese Website meine MIDI-Geräte mit sysex liest und schreibt, ohne zu akzeptieren.

die Spezifikation sagen:

Anfordern von MIDI-Zugriff der Benutzer für den Zugriff auf MIDI Geräte veranlassen sollten, insbesondere, wenn das System exklusiven Zugriff angefordert wird. In einigen Szenarien kann diese Erlaubnis bereits implizit oder ein explizit gewährt, wobei diese Aufforderung nicht

Vielleicht ist dies ein Parameter in Chrome-Navigator, die automatisch diese Aufforderung Frage autorisieren erscheinen.

Es scheint, dass Sie allein Ihre Antwort mit Einstellungen auf Chrome Navigator sind. Basierend auf Domain-Namen können Sie automatisch akzeptieren diese MIDI-Autorisierung mit Delcaration Domain-Site, denke ich ...

Warum testen Sie nicht bestehen von MIDIAccess-Objekt? Wenn das MIDIAccess-Objekt existiert, haben Sie einen Benutzer, der bereits die Berechtigung MIDI-Sysex akzeptiert.