首页 > 系统 > Android > 正文

Android开发之开门狗在程序锁中的应用实例

2020-04-11 10:47:49
字体:
来源:转载
供稿:网友

本文实例讲述了Android开发之开门狗在程序锁中的应用方法。分享给大家供大家参考,具体如下:

protected static final String TAG = "WatchDogService";private AppLockDao dao;private List<String> lockApps;private ActivityManager am;private Intent lockappintent;@Overridepublic IBinder onBind(Intent intent) {    return null;}/*** 服务第一次被调用的时候调用 的方法*/@Overridepublic void onCreate() {    super.onCreate();    dao = new AppLockDao(this);    //得到所用的要锁定的应用程序    lockApps = dao.getAllPackName();    am = (ActivityManager) getSystemService(ACTIVITY_SERVICE);    lockappintent = new Intent(this,LockScreenActivity.class);    lockappintent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);    new Thread(){      public void run() {        while(true){          try {            //得到当前正在运行应用程序的报名            //返回系统里的任务栈的信息,taskInfos只有一个元素,对应当前正在运行的应用程序            List<RunningTaskInfo> taskInfos = am.getRunningTasks(1);            RunningTaskInfo currentTask = taskInfos.get(0);            //获取当前用户可见的Activity所在的程序的包名            String packName = currentTask.topActivity.getPackageName();            Log.i(TAG, "当前运行的程序包名:"+packName);            if(lockApps.contains(packName)){//锁定              lockappintent.putExtra("packname", packName);              startActivity(lockappintent);            }else{//放行            }            sleep(200);          } catch (Exception e) {            e.printStackTrace();          }        }      };    }.start();}

更多关于Android相关内容感兴趣的读者可查看本站专题:《Android开发入门与进阶教程》、《Android通信方式总结》、《Android基本组件用法总结》、《Android视图View技巧总结》、《Android布局layout技巧总结》及《Android控件用法总结

希望本文所述对大家Android程序设计有所帮助。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表