Wohin konvertiert Android die Taste für physische Medien (im Headset-Kabel) in logische Aktionen (wie NEXT, STOP, SPEECH QUERY)?Wo interpretiert Android den Media-Button?
Gibt es eine Möglichkeit, diese Zuweisung zu ändern (dh andere Aktionen daraus zu erstellen)?
Hinweis: Ich habe versucht, einen MediaButtonReceiver zu installieren. Aber es sieht nur den interpretierten Schlüssel. So sehe ich nur den Tastendruck, nachdem der Schlüssel früher genug freigegeben wurde, um keine SPEECH QUERY auszulösen.
Update: Ich sehe die Raw-Key-Ereignisse, die ich brauche, in onDispatchKeyEvent, solange meine App im Vordergrund ist. Aber wie bekomme ich sie, wenn der Sperrbildschirm aktiv ist?
Der MediaButtonReceiver wird aufgerufen, wenn sich die App im Hintergrund befindet (aber erst, nachdem der Schlüssel freigegeben wurde).
Das Problem bleibt gleich. Ich sehe nur kurze Tastendrücke, die mir gesendet werden, wenn die Taste bereits losgelassen wurde (zusammen mit der Tastenfreigabe). Sie enthalten Zeitstempel, aber ich brauche die Ereignisse in Echtzeit. –
Ich kann nicht sehen, wie die RTP-APIs neuen Zugriff auf den Media-Button geben. Hast du ein Beispiel? –