实际上我正在开发一个应用程序,只需在安装的设备上打开这个应用程序,这样我就可以阻止/禁用后台,主页,多任务的物理按钮。
我已经阅读了一些关于如何操作的文章,但仍然无法在我的应用程序中实现它。
答案 0 :(得分:2)
//将下面的代码放在onStart()方法
上面@Override
protected void onStart() {
super.onStart();
// start lock task mode if it's not already active
ActivityManager am = (ActivityManager) getSystemService(
Context.ACTIVITY_SERVICE);
// ActivityManager.getLockTaskModeState api is not available in pre-M.
if (Build.VERSION.SDK_INT < Build.VERSION_CODES.M) {
if (!am.isInLockTaskMode()) {
startLockTask();
}
} else {
if (am.getLockTaskModeState() ==
ActivityManager.LOCK_TASK_MODE_NONE) {
startLockTask();
}
}
}
答案 1 :(得分:1)
对于back button
,您可以使用以下Override
onBackPressed
方法: -
@Override
public void onBackPressed() {
// do what you want
}
Home Button
@Override
public void onAttachedToWindow() {
this.getWindow().setType(WindowManager.LayoutParams.TYPE_KEYGUARD);
super.onAttachedToWindow();
}
禁用recent app
按钮: -
第1步
将此权限添加到manifest.xml
文件
<uses-permission android:name="android.permission.REORDER_TASKS" />
第2步
将此代码放在您要阻止/停用最近的应用按钮的任何活动中
@Override
protected void onPause() {
super.onPause();
ActivityManager activityManager = (ActivityManager) getApplicationContext()
.getSystemService(Context.ACTIVITY_SERVICE);
activityManager.moveTaskToFront(getTaskId(), 0);
}