苹果7修改home键长按?三星s7怎么更改长按home键的动作
一、长按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\base\policy\src\com\android\internal\policy\impl\PhoneWindowManager.java
public boolean interceptKeyBeforeDispatching(WindowState win, int action, int flags,
int keyCode, int scanCode, int metaState, int repeatCount, int policyFlags){
final boolean down=(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或者)事件。即!down为true,执行该方法
if(!down){
mHomePressed= false;
if(!canceled){
boolean incomingRinging= false;
try{
ITelephony telephonyService= getTelephonyService();
if(telephonyService!= null){
incomingRinging= telephonyService.isRinging();
}
} catch(RemoteException ex){
Log.w(TAG,"RemoteException from getPhoneInterface()", ex);
}
if(incomingRinging){
Log.i(TAG,"Ignoring HOME; there's a ringing incoming call.");
} else{
//单击home处理
launchHomeFromHotKey();
}
} else{
Log.i(TAG,"Ignoring HOME; event canceled.");
}
}
}
return true;
}
...
// 1、第一次处理home按下
if(keyCode== KeyEvent.KEYCODE_HOME){
// If a system window has focus, then it doesn't make sense
// right now to interact with applications.
WindowManager.LayoutParams attrs= win!= null? win.getAttrs(): null;
if(attrs!= null){
final int type= attrs.type;
if(type== WindowManager.LayoutParams.TYPE_KEYGUARD
|| type== WindowManager.LayoutParams.TYPE_KEYGUARD_DIALOG){
// the"app" is keyguard, so give it the key
return false;
}
final int typeCount= WINDOW_TYPES_WHERE_HOME_DOESNT_WORK.length;
for(int i=0; i<typeCount; i++){
if(type== WINDOW_TYPES_WHERE_HOME_DOESNT_WORK[i]){
// don't do anything, but also don't pass it to the app
return true;
}
}
}
// 2、第一次按下home,会调用postDelayed发送一个延时处理的操作。同时将mHomePressed置为true。
//如果第5步没有进入if(!down),此时就要执行长按home方法了。
if(down&& repeatCount== 0){
if(!keyguardOn){
mHandler.postDelayed(mHomeLongPress, ViewConfiguration.getGlobalActionKeyTimeout());
}
mHomePressed= true;
}
return true;
}//其他键的处理
else if(...){...}
二、苹果手机长按开机键和home键的作用是什么
苹果手机长按开机键和home键的作用是强制关机,一般用在软件卡死,或屏幕不能操作时。
Home键其他功能如下:
1.按一次home键,返回主界面;
2.双击home键,出现后台运行程序;
3.按电源键3秒后,同时按住home键十秒,松开电源键,保持home键十五秒,进入DEF模式;
4.截屏功能:按住Home键同时按一下开关键,可截取当前屏幕图片;
5.重启iPhone功能:长按开机键和home键,并保持十秒,将会重启iPhone。
三、苹果手机长按home键是什么功能
长按home键是呼出语音助手Siri;
iOS系统上有一个叫Siri的功能,通俗的说,就是语音助手,该功能的作用主要是方便用户用语音控制手机,达到解放双手的目的。
拓展资料以下是其他home键操作:
1、按一次home键,返回主界面。
2、双击home键,出现后台运行程序。
3、按电源键3秒后,同时按住home键10秒,松开电源键,保持home键15秒,进入DEF模式。
4、截屏功能:方法是按住“Home”键的同时按一下“开关”按键则可截取当前的屏幕图片自动存储到“照片相簿”里。
5、重启iPhone功能:方法是按住“Home”键的同时按住“开关”按键不要松开,并保持十秒钟左右,就会看到Apple的标志。
四、三星s7怎么更改长按home键的动作
S7手机更改长按Home键设置的操作方法:依次操作设置-应用程序-默认应用程序-设备辅助应用程序-手机百度、S助手、S Voice应用、无。
在主页面下,点击打开【设置】。
2.在设置页面,点击选择【应用程序】。
3.在应用程序页面,点击右上角三点图标,然后点击选择【默认应用程序】。
4.进入默认应用程序页面后,点击选择【设备辅助应用程序】。
5.进入设备辅助应用程序后,点击选择【设备辅助应用程序】。
6.进入设备辅助应用程序后,可按喜好选择【手机百度】、【S助手】、【S Voice应用】、【无】即可。