Android: пересылка клавиш из IME в фоновое приложение - PullRequest
0 голосов
/ 13 июня 2019

Предположим, что мое приложение (скажем, онлайн-радио) может (и часто будет ) работать в фоновом режиме.Мой пользовательский IME получает физические нажатия клавиш, и в зависимости от нажатой клавиши я хочу выполнить некоторые операции в фоновом приложении, например, изменить текущую радиостанцию.Приложение уже подготовлено для обработки упомянутых выше сочетаний клавиш, поэтому IF приложение работает на переднем плане, и проблема решена.

Но что происходит, когда приложение продолжает работать в фоновом режиме?

Если бы я был на Windows, я просто отправил бы сообщения Key Down, Key Up и т. Д. В фоновое приложение WindowProc, гарантируя, что приложение (и только приложение)будет получать эти нажатия клавиш, как он будет работать на переднем плане.Но не уверен, что это работает и на Android.Если это работает, можете ли вы помочь мне с кодом Java, так как я новичок на Android?

Если эта идея не работает на Android, вы бы предложили мне другое решение, чтобы каким-то образом перенаправить физическое нажатие клавишиот Input Method Editor до приложения, которое работает в фоновом режиме, предпочтительно без временного получения приложения на переднем плане ?

Любые предложения приветствуются.Лучше всего было бы иметь решение, которое работает на Android 7 (или выше), но решения для Android 8 и выше также в порядке.

...