Androidキー値の増加(二)


一.前回では、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