❶ 關於安卓手機HOME鍵的鍵值
HOME鍵是物理屬性,不會失靈的,除非是壞了,你那個HOME鍵是虛擬鍵吧,有可能是感應鍵壞了
❷ android怎麼實現後台對按鍵事件的監控
遙控器按鍵事件這個不是在Android源碼的bootable下面ircon.c配置的么。比如:
{ .scancode = 0x0b, .mask = 0xaa0087ee,
.keycode = KEY_UP, .spec = IRCON_KEYCODE_NORMAL | IRCON_KEYCODE_LONGPRESS | IRCON_KEYCODE_MOUSEMD },
遙控器按鍵編號是「 0x0b」,給他的響應是「KEY_UP」,就是方向鍵的下,這個是在源碼里邊配置的。你必須要有遙控器的書名數,知道遙控器每個按鍵的編號,然後對應給他相應的響應才可以。
但是你要操控手機,你的手機必須要能接受遙控器信號,這個也是要硬體支持的,一般的手機貌似都沒有這個。
這個遙控的響應操作是驅動層做的,和應用層沒什麼關系,主要是驅動和硬體的支持。
❸ android uri跳轉後怎麼返回,用遙控器返回不了啊,我做的TV_BOX,用遙控器該怎麼返回呢
直接back鍵就可以返回了,看你遙控器對應的鍵值是如何設置的,我的是exit對應的是android的back鍵
❹ 請教如何查看android鍵值定義
在代碼里看就可以,如
public class Main extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
}
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
// 查看android鍵值定義
KeyEvent.(按Alt+/查看所有定義的)
return super.onKeyDown(keyCode, event);
}
}
❺ 更改安卓手機按鍵映射/鍵值
說的具體點,比如你想發送個哪一個按鍵,試試「+a」,代碼發出兩行來看看。你後面兩行問得有點搞不清你到底想發什麼鍵。
❻ 誰能教教我如何讓Android瀏覽器獲取紅外遙控器的事件做安卓機頂盒用,謝謝啦~
<script>
function keyEvent(evt)
{
evt = evt ? evt : window.event;
var keyCode = evt.which ? evt.which : evt.keyCode;
if(keyCode == 49)
{
window.location="";
}
}
document.onkeypress = keyEvent;
//1 >> 49
//left >> 37
//right >>39
// top >> 38
//down >> 40
// ok >> 13
//返回 >> 8
//機頂盒不同,可能鍵值有差異。出現差異的情況請跟我反應,記錄。
</script>
❼ android HOME長按之後的鍵值是多少
home鍵在KeyEvent中的鍵值為3.
ublic static final int KEYCODE_HOME = 3;
當用戶按下home鍵的時候(包括長按),程序會進入到PhoneWindowManager.java類中的public boolean interceptKeyBeforeDispatching(WindowState win, int action, int flags,int keyCode, int scanCode, int metaState, int repeatCount, int policyFlags)這個方法中進行處理。如果用戶是連續點擊home,此時就要執行長按home事件了。
即執行mHandler.postDelayed(mHomeLongPress,ViewConfiguration.getGlobalActionKeyTimeout());對應的代碼。也就會跳轉到mHomeLongPress這個Runnable接著往下執行。
interceptKeyBeforeDispatching這個方法位於PhoneWindowManager.java中。
位置為:frameworks.java
(WindowStatewin,intaction,intflags,
intkeyCode,intscanCode,intmetaState,intrepeatCount,intpolicyFlags){
finalbooleandown=(action==KeyEvent.ACTION_DOWN);
...
//4、用戶按下home,然後馬上釋放。此時這個條件成立。將之前postDelayed的事件remove掉。此時就不會執行長按home事件。
if((keyCode==KeyEvent.KEYCODE_HOME)&&!down){
mHandler.removeCallbacks(mHomeLongPress);
}
//5、第一次按下home,mHomePressed為false。
if(mHomePressed){
if(keyCode==KeyEvent.KEYCODE_HOME){
//a、如果用戶連續按下home,此時暫時沒有up事件。所以就不走這里。
//b、如果用戶沒有連續按下home,此時過來的是up(move或者http://www.tiecou.com/)事件。即!down為true,執行該方法
if(!down){
mHomePressed=false;
if(!canceled){
booleanincomingRinging=false;
try{
ITelephonytelephonyService=getTelephonyService();
if(telephonyService!=null){
incomingRinging=telephonyService.isRinging();
}
}catch(RemoteExceptionex){
Log.w(TAG,"()",ex);
}
if(incomingRinging){
Log.i(TAG,"IgnoringHOME;there'saringingincomingcall.");
}else{
//單擊home處理
launchHomeFromHotKey();
}
}else{
Log.i(TAG,"IgnoringHOME;eventcanceled.");
}
}
}
returntrue;
}
...
//1、第一次處理home按下
if(keyCode==KeyEvent.KEYCODE_HOME){
//Ifasystemwindowhasfocus,thenitdoesn'tmakesense
//.
WindowManager.LayoutParamsattrs=win!=null?win.getAttrs():null;
if(attrs!=null){
finalinttype=attrs.type;
if(type==WindowManager.LayoutParams.TYPE_KEYGUARD
||type==WindowManager.LayoutParams.TYPE_KEYGUARD_DIALOG){
//the"app"iskeyguard,sogiveitthekey
returnfalse;
}
finalinttypeCount=WINDOW_TYPES_WHERE_HOME_DOESNT_WORK.length;
for(inti=0;i<typeCount;i++){
if(type==WINDOW_TYPES_WHERE_HOME_DOESNT_WORK[i]){
//don'tdoanything,butalsodon'tpassittotheapp
returntrue;
}
}
}
//2、第一次按下home,會調用postDelayed發送一個延時處理的操作。同時將mHomePressed置為true。
//如果第5步沒有進入if(!down),此時就要執行長按home方法了。
if(down&&repeatCount==0){
if(!keyguardOn){
mHandler.postDelayed(mHomeLongPress,ViewConfiguration.getGlobalActionKeyTimeout());
}
mHomePressed=true;
}
returntrue;
}//其他鍵的處理
elseif(...){...}
❽ 安卓鍵值 home鍵,菜單鍵,返回鍵,長按的鍵值分別是多少
沒用,只是顯示歷史程序便於快速打開而已。實際上並不方便也很少用到這個功能。
❾ 請問怎麼解出紅外遙控器的鍵值
接收,放大,對脈沖信號用單片機自己寫程序即可讀出鍵值,注意,必須知道其原始編碼規則,不同遙控器原始編碼規則不同。
❿ 安卓到底如何修改鍵值,讓長按「返回」變「鎖屏」
例如把搜索鍵改成電源鍵 利用搜索替換 把所有的search換成power即可 注意 第一個search是短按 緊接著第二個是長按 由此類推 每個鍵後面都有註明 比如search(搜索鍵) power(電源鍵) 更改時只需要將這個值改為目標值就行了