首页 > 解决方案 > 是什么阻止了 KEYCODE_POWER 和 KEYCODE_SLEEP 的使用

问题描述

我正在为 Android TV 开发遥控器。我用一个修改过的键盘替换了用户键盘(Leanback Keyboard),所以当它被选中时,我可以发送网络命令来使用几个功能。

例如,KEYCODE_DPAD_LEFT 用于使 dpad 向左移动。

但是,要打开/关闭,我需要以下键码才能工作:KEYCODE_SLEEP KEYCODE_POWER KEYCODE_WAKEUP

但这些都行不通。

我使用以下代码发送键码:

            InputConnection ic = getCurrentInputConnection();
                ic.sendKeyEvent(new KeyEvent(KeyEvent.ACTION_DOWN, KeyEvent.KEYCODE_SLEEP));
                ic.sendKeyEvent(new KeyEvent(KeyEvent.ACTION_UP, KeyEvent.KEYCODE_SLEEP));

但这不起作用。我怀疑权限,所以我添加了 DEVICE_POWER 权限,但它没有帮助。缺什么 ?

标签: javaandroidpermissionskey

解决方案


推荐阅读