Question

The documentation for KeyEvent.ACTION_MULTIPLE says:

"multiple duplicate key events have occurred in a row, or a complex string is being delivered. If the key code is not {#link KEYCODE_UNKNOWN then the {#link getRepeatCount() method returns the number of times the given key code should be executed. Otherwise, if the key code is KEYCODE_UNKNOWN, then this is a sequence of characters as returned by getCharacters()."

But it doesn't say how to actually generate that event.

  1. I tried (rapidly) double-clicking the headset's Pause/Play button, but all I receive is ordinary ACTION_UP and ACTION_DOWN.
  2. I also tried pressing and holding down the headset's Pause/Play button, but all I receive is ordinary ACTION_UP and ACTION_DOWN.

How do I generate a KeyEvent.ACTION_MULTIPLE (as a user, using a headset control)?

Was it helpful?

Solution

Android's BaseMovementMethod includes code for handling ACTION_MULTIPLE so presumably the event is generated for key auto-repeat when the user holds down an arrow key.

OTHER TIPS

I'm not sure, but I would think that ACTION_MULTIPLE would probably be triggered by actual buttons on a blutooth keyboard for instance. I think that the reason you're just getting ACTION_UP and ACTION_DOWN is because those are the pre-defined KeyEvents for your headset controls. I hope this helps. :)

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top