Android增加键值(二)
16lz
2021-01-24
一.在上一篇中,我们已经在linux中定义了键值MYHALL为250,继续上面键值在Android上添加键值。
首先找到键值相关定义的kl文件,加入代码
key 250 MYHALL WAKE
MYHALL就是我们在Android上使用关联的字符串。
注:在kl文件中:
WAKE: 当设备睡眠时按下此键,设备将被唤醒,按键事件将会被发送到应用程序.
WAKE_DROPPED: 当设备睡眠时按下此键,设备将被唤醒,而按键事件不会被发送到应用程序.
比如我的测试键值apk:
1、当没有设置WAKE和WAKE_DROPPED时候,系统没有休眠的时候,正常读取到MYHALL键值,系统在睡眠时候,按下MYHALL,系统不能醒来,apk读取不到键值。
2、当设置了WAKE_DROPPED的时候,系统如果在睡眠状态,按下MYHALL,系统唤醒,但是apk读取不到MYHALL键值。
3、当设置了WAKE的时候,系统如果在睡眠状态,按下MYHALL,系统唤醒,并且apk成功读取到MYHALL键值。
二.然后就跟着这个博客做吧(= =!)
http://blog.csdn.net/kakaback/article/details/8115748
代码修改完之后可能报错,make update_api下就好
三.编译通过,烧入系统之后,编写apk测试增加的键值,部分代码如下
package com.example.mykeycode;import android.os.Bundle;import android.app.Activity;import android.view.Menu;import android.text.Editable;import android.text.TextWatcher;import android.view.View;import android.widget.Button;import android.widget.EditText;import android.widget.TextView;import android.view.KeyEvent;public class Mykeytest extends Activity { private EditText tv = null; String string="Start..."; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_mykeytest); tv = (EditText)findViewById(R.id.editText1); tv.setText(string); } @Override public boolean onKeyDown(int keyCode, KeyEvent event) { if (keyCode==KeyEvent.KEYCODE_BACK) { return false; } string="你按下的是"+"key["+keyCode+"]"; tv.setText(string); return true; }}
完整的apk键值测试源代码下载地址:
http://download.csdn.net/detail/u011630458/5963585
更多相关文章
- 给android添加系统属性:Settings.system和SystemProperties
- eclipse导入android缺失android.jar包解决(吐血奉献的)
- Android(安卓)API课程1.3: The Menifest File
- android 模拟器root
- Android(安卓)系统(248)---解读Android进程优先级ADJ算法
- 谷歌宣布关闭Google TV,由Android(安卓)TV接任
- android 图形系统加速学习系列 (一)
- Android(安卓)Logcat输出为何能自动换行输出的原因以及多\n的作
- Android获取和设置系统环境变量指南