本文主要实现的功能是在android系统中添加一个按键,framework层继续上报按键事件
将键值在framework层上报。代码的改动如下:
1 diff --git a/device/rockchip/common/device.mk b/device/rockchip/common/device.mk 2 index d80f644..dc5c454 100755 3 --- a/device/rockchip/common/device.mk 4 +++ b/device/rockchip/common/device.mk 5 @@ -88,6 +88,7 @@ PRODUCT_COPY_FILES += \ 6 device/rockchip/common/media_profiles_default.xml:system/etc/media_profiles_default.xml \ 7 device/rockchip/common/rk29-keypad.kl:system/usr/keylayout/rk29-keypad.kl \ 8 device/rockchip/common/camera-input.kl:system/usr/keylayout/camera-input.kl \ 9 + device/rockchip/common/zzbkey-input.kl:system/usr/keylayout/zzbkey-input.kl \ 10 device/rockchip/common/printer-event.kl:system/usr/keylayout/printer-event.kl \ 11 device/rockchip/common/20050030_pwm.kl:system/usr/keylayout/20050030_pwm.kl \ 12 device/rockchip/common/ff680000_pwm.kl:system/usr/keylayout/ff680000_pwm.kl \ 13 diff --git a/frameworks/base/api/current.txt b/frameworks/base/api/current.txt 14 index 20e3b3e..313e909 100755 15 --- a/frameworks/base/api/current.txt 16 +++ b/frameworks/base/api/current.txt 17 @@ -35217,6 +35217,7 @@ package android.view { 18 field public static final int KEYCODE_CALL = 5; // 0x5 19 field public static final int KEYCODE_CAMERA = 27; // 0x1b 20 field public static final int KEYCODE_CAMERA_ESD = 295; // 0x127 21 + field public static final int KEYCODE_ZZB_KEY = 512; // 0x127 22 field public static final int KEYCODE_CAPS_LOCK = 115; // 0x73 23 field public static final int KEYCODE_CAPTIONS = 175; // 0xaf 24 field public static final int KEYCODE_CHANNEL_DOWN = 167; // 0xa7 25 diff --git a/frameworks/base/api/system-current.txt b/frameworks/base/api/system-current.txt 26 index 6d939df..8b3a438 100755 27 --- a/frameworks/base/api/system-current.txt 28 +++ b/frameworks/base/api/system-current.txt 29 @@ -37509,6 +37509,7 @@ package android.view { 30 field public static final int KEYCODE_CALL = 5; // 0x5 31 field public static final int KEYCODE_CAMERA = 27; // 0x1b 32 field public static final int KEYCODE_CAMERA_ESD = 295; // 0x127 33 + field public static final int KEYCODE_ZZB_KEY = 512; // 0x127 34 field public static final int KEYCODE_CAPS_LOCK = 115; // 0x73 35 field public static final int KEYCODE_CAPTIONS = 175; // 0xaf 36 field public static final int KEYCODE_CHANNEL_DOWN = 167; // 0xa7 37 diff --git a/frameworks/base/core/java/android/view/KeyEvent.java b/frameworks/base/core/java/android/view/KeyEvent.java 38 index 94f1e17..9689448 100755 39 --- a/frameworks/base/core/java/android/view/KeyEvent.java 40 +++ b/frameworks/base/core/java/android/view/KeyEvent.java 41 @@ -798,6 +798,7 @@ public class KeyEvent extends InputEvent implements Parcelable { 42 //$_rbox_$_modify_$ end 43 44 public static final int KEYCODE_CAMERA_ESD = 295; 45 + public static final int KEYCODE_ZZB_KEY = 512; 46 //private static final int LAST_KEYCODE = KEYCODE_CAMERA_ESD; 47 public static final int KEYCODE_PRN_COVEROPEN = 497; 48 public static final int KEYCODE_PRN_COVERCLOSE = 498; 49 @@ -1853,6 +1854,7 @@ public class KeyEvent extends InputEvent implements Parcelable { 50 case KeyEvent.KEYCODE_BRIGHTNESS_UP: 51 case KeyEvent.KEYCODE_MEDIA_AUDIO_TRACK: 52 case KeyEvent.KEYCODE_CAMERA_ESD: 53 + case KeyEvent.KEYCODE_ZZB_KEY: 54 case KeyEvent.KEYCODE_PRN_COVEROPEN: 55 case KeyEvent.KEYCODE_PRN_COVERCLOSE: 56 case KeyEvent.KEYCODE_PRN_TEMPOUT: 57 diff --git a/frameworks/base/core/res/res/values/attrs.xml b/frameworks/base/core/res/res/values/attrs.xml 58 index 0a685e8..4709151 100755 59 --- a/frameworks/base/core/res/res/values/attrs.xml 60 +++ b/frameworks/base/core/res/res/values/attrs.xml 61 @@ -1829,6 +1829,7 @@ i 62 <enum name="KEYCODE_TV_MEDIA_PAUSE" value="294" /> 63 <!--$_rbox_$_modify_$_end--> 64 <enum name="KEYCODE_CAMERA_ESD" value="295" /> 65 + <enum name="KEYCODE_ZZB_KEY" value="512" /> 66 <enum name="KEYCODE_PRN_COVEROPEN" value="497" /> 67 <enum name="KEYCODE_PRN_COVERCLOSE" value="498" /> 68 <enum name="KEYCODE_PRN_TEMPOUT" value="499" /> 69 diff --git a/frameworks/native/include/android/keycodes.h b/frameworks/native/include/android/keycodes.h 70 index 262de9f..5b5a3b5 100755 71 --- a/frameworks/native/include/android/keycodes.h 72 +++ b/frameworks/native/include/android/keycodes.h 73 @@ -730,6 +730,7 @@ enum { 74 AKEYCODE_TV_KEYMOUSE_DOWN = 283, 75 AKEYCODE_TV_KEYMOUSE_MODE_SWITCH = 284, 76 AKEYCODE_CAMERA_ESD = 295, 77 + AKEYCODE_ZZB_KEY = 512, 78 AKEYCODE_PRN_COVEROPEN = 497, 79 AKEYCODE_PRN_COVERCLOSE = 498, 80 AKEYCODE_PRN_TEMPOUT = 499, 81 diff --git a/frameworks/native/include/input/InputEventLabels.h b/frameworks/native/include/input/InputEventLabels.h 82 index 8a47e31..0ce216b 100755 83 --- a/frameworks/native/include/input/InputEventLabels.h 84 +++ b/frameworks/native/include/input/InputEventLabels.h 85 @@ -304,6 +304,7 @@ static const InputEventLabel KEYCODES[] = { 86 DEFINE_KEYCODE(TV_KEYMOUSE_DOWN), 87 DEFINE_KEYCODE(TV_KEYMOUSE_MODE_SWITCH), 88 DEFINE_KEYCODE(CAMERA_ESD), 89 + DEFINE_KEYCODE(ZZB_KEY), 90 DEFINE_KEYCODE(HELP), 91 DEFINE_KEYCODE(NAVIGATE_PREVIOUS), 92 DEFINE_KEYCODE(NAVIGATE_NEXT), 93 zhuangzb@UYFSanbu02:~/project/E800/rk3288-e810-android6.0$