禁用Android ROM硬件按键

7
我想在我的自定义AOSP rom中禁用Home、Menu和Back按钮。我在互联网上搜索过,发现可以在out/target/product/generic/system/usr/keylayout中的key layout文件成功构建后禁用按钮。我正在编辑的文件是:Generic.kl。现在我已经注释掉了这些按钮:
  • # key 139 MENU WAKE_DROPPED
  • # key 158 BACK WAKE_DROPPED
  • # key 172 HOME
然后我重新启动模拟器,但按钮仍然可以使用...我错过了什么吗?
谢谢,Stefan

为什么要关闭投票?这个问题似乎与AOSP代码本身有关,与任何“我尝试了这个代码并且xxx发生了”一样有效。 - Richard Le Mesurier
这个问题似乎并不无理。至于问题本身,你在第二次构建之前尝试过make installclean吗? - Andrew T.
嗨,安德鲁,是的,我尝试过make installclean,但由于keylayout文件位于out文件夹中,它是在make之后生成的。 因此,我的修改将被删除。 - user3506467
还是我做错了什么吗?如果有人知道另一种禁用硬件按钮的解决方案,我很乐意知道=) - user3506467
我真的不知道,但我知道你不应该在out中编辑文件,你应该编辑创建out的文件。我非常有兴趣了解你的结果,也许可以从设备中找到的.kcm和.kl文件开始查找? - Andrew T.
我也在做这个,但是我无法保存文件,请问你能告诉我该怎么办吗? - user12500983
2个回答

2

这里是一个很好的地方,可以在编译之前编辑文件。

http://www.kandroid.org/online-pdk/guide/keymaps_keyboard_input.html

在源代码中,您将在 /device/vendor/product/ 下找到默认的键映射,它将是以 .kl 结尾的文件。

如果您有一个已 root 的设备,您可以使用根文件浏览器编辑实际设备上的 /system/usr/keylayout/qwerty.kl 文件。

我自己正在寻找答案,希望分享正确的信息。

编辑 此外,我相当确定,除非在运行模拟器之前对其进行一些修改,否则所做的更改不会在重新启动后保留。

编辑 如果您想在编译之前编辑 ROM 中设备上的文件,请查看 device.mk 文件,例如:

device/lge/hammerhead/gpio-keys.kl:system/usr/keylayout/gpio-keys.kl

来自 Nexus 5 的 make 文件中的这行表示 system/usr/keylayout/gpio-keys.kl 源自源代码中的 device/lge/hammerhead/gpio-keys.kl。


0

一旦您在keylayout中编辑了3个键并在它们前面添加#,请在/system/usr/keylayout/sec_touchkey.kl中执行相同的操作,然后VOLLA!它可以完美地在我的Galaxy S3上工作。完成此操作后,请下载GES4灯光控制器并关闭按键上的灯光。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接