}
HOME和APP_SWITCH比较复杂,尤其是HOME键,如果不特殊设置,有可能会被恶意应用利用。所以即使是处理了HOME键,实测会首先进入Launcher,一段时间后才会执行我们的操作,想必这也是系统层从安全角度的考量,有时间看一下系统源码。
尝试过多种方式之后,复写onUserLeaveHint函数比较便捷,如下即可:
@Override
protected void onUserLeaveHint() {
//super.onUserLeaveHint();
exitAction();
}
把操作写在了exitAction函数中,这里以启动设置为例:
private void exitAction() {
try {
Intent intent = new Intent();
ComponentName componentName = new ComponentName(“com.android.settings”,
“com.android.settings.Settings”);
intent.setComponent(componentName);
startActivity(intent);
} catch (Exception e) {
e.printStackTrace();
}
}
2.DISABLE_KEYGUARD
AndroidManifest.xml加权限:
Activity处理:
public class Main extends Activity {