有些手机以及平板中有一种访客模式,打开访客模式,我们将无法拖动Launcher上的图标,也无法打开adb
主要操作就是在打开开关的地方执行如下操作
GuestModeUtil guestModeUtil = GuestModeUtil.getInstance(getActivity());
guestModeUtil.save(pin);// 保存PIN码
SystemProperties.set("persist.security.guestmode", "1");// 设置系统属性
guestModeUtil.disableADB();// 关闭ADB
guestModeUtil.sendModeChangeToLauncher();//
guestModeUtil.sendBroadCast(getActivity(), true); //关闭广播
guestModeUtil.clearAllRecentsApp();// 清楚历史痕迹
具体的实现不在此展示
发送广播,Launcher当中接收对应的广播再拦截掉对应的触摸时间,使用户无法改变Launcher
public void sendBroadCast(Activity a, boolean enabled) {
Intent in = new Intent();
in.setAction(ACTION_GUESTMODE_STATUS_CHANGE);
in.putExtra(KEY_ENABLE, enabled);
a.sendBroadcast(in);
}
原文地址:http://blog.csdn.net/limingxiao117/article/details/41130113