Tasti speciali di KeyEvent (come il muto)

Attualmente sto cercando di creare un piccolo app per remoto per Android per controllare un MediaPlayer (come Rythmbox) sul mio PC.

La maggior parte dei lettori multimediali comprende le chiavi speciali della mia tastiera (come "play / pause" o "next / previous"). La mia idea è che l'applicazione Android invia un command (come "pausa") al PC. Sul PC esegue un'applicazione Java normale che riceve questi comandi e simula una pressione di un tasto di questo button speciale.

  • Come impostare la dimensione del text della visualizzazione dynamic per diverse schermate
  • javax.net.ssl.SSLException: Connessione chiusa dal peer sul dispositivo 4.4.2 (funziona in 6.0.1)
  • Registrazione di valori delle variables in ndk native di Android
  • Non è stato eseguito l'evento clic su button
  • Come bufferare il pdf che sta scaricandolo e visualizzarlo durante lo scaricamento utilizzando l'applicazione Pdf reader in android
  • ADB non riconosce Nexus S in Mac 10.6
  • Il vantaggio è che puoi utilizzare questa applicazione su tutte le piattaforms per each giocatore che support queste chiavi speciali (e sono su quasi tutte le nuove tastiere USB).

    Ho cercato i JavaDocs per una costante nella class KeyEvent , ma non posso trovare nessuno. Qualcuno sa come simulare una printing di uno di quei pulsanti e se questo è anche ansible con Java?

    Le biblioteche aggiuntive sono buone con me anche se non c'è altra soluzione.

    Inoltre, so che dovrei usare un Robot per simulare la chiave-printing e questo funziona per tutte le chiavi normali sulla tastiera. Non riesco semplicemente a trovare un modo per simulare una pressa a chiave su quelle chiavi speciali.

  • Lunga pressione su Android
  • Android: submit periodicamente i dati di posizione in background (each 30 secondi) e chiedere al server nuovi dati
  • Come risolvere l'orientamento dello schermo in ritratto per tutta la mia applicazione PhoneGap
  • Apri informazioni attività senza chiudere l'attività principale
  • Impostare tirare per aggiornare come rinfrescante all'inizio o riprendere il frammento
  • Android: Possibile avere più preferenze condivise distinte per app?
  • 3 Solutions collect form web for “Tasti speciali di KeyEvent (come il muto)”

    Quindi, penso che non sia ansible farlo con Java pura. Ho provato qualcos'altro per scoprire quali codice chiave hanno le chiavi speciali, ma questo piccolo programma restituisce solo 0 per quei tasti (funziona per i tasti "normali"):

     public class GetKeycode implements KeyListener{ private JFrame f; private JLabel feld; public GetKeycode(){ f = new JFrame("GetKeycode"); f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); f.addKeyListener(this); feld = new JLabel(); f.add(feld); f.pack(); f.setVisible(true); } @Override public void keyReleased(KeyEvent e) { feld.setText(e.getKeyCode()+""); } public static void main(String[] args) { new GetKeycode(); } // Unused: @Override public void keyPressed(KeyEvent e) {} @Override public void keyTyped(KeyEvent arg0) {} } 

    Spero che questo sarà attuato nelle future versioni del JRE. Ma al momento, sembra che non ci sia soluzione per questo.

    Grazie per tutte le risposte comunque.

    Hai già provato a submit i codici chiave dipendenti dal sistema operativo al Robot ? Le chiavi multimediali, purtroppo, non sono supportte direttamente da Java, neanche in Java 1.7, ma la maggior parte delle definizioni del codice di codice in java.awt.event.KeyCode hanno lo stesso valore dei pendenti nativi di Windows. Il Robot non filtra i codici chiave sconosciuti direttamente in Java ma consente al suo back end di decidere cosa fare con loro. Quindi c'è una possibilità che potrebbe funzionare alless su alcune piattaforms.

    Il codice della chiave MUTE sarebbe 0xAD . Ecco un elenco dei codici chiave di Windows .

     VK_MEDIA_PLAY_PAUSE VK_VOLUME_MUTE VK_VOLUME_DOWN VK_MEDIA_NEXT_TRACK VK_MEDIA_PREV_TRACK 

    Controlla un'applicazione Windows utilizzando Java

    Per risolvere temporaneamente il tuo problema solo google "rhythmbox android remote". Ci sono già alcuni grandi progetti.

    L'Android è un fan Android di Google, tutto su telefoni Android, Android Wear, Android Dev e applicazioni Android Games e così via.