还是安全测试的原因,废话就不说了,直接进入正题
Activity生命周期中
onPause()中加入:
| 1 | AtyModule.getinstance().onPause(this); | 
onResume()中加入:
| 1 | AtyModule.getinstance().onResume(); | 
就Ok了。
AtyModule文件类如下,在合适的地方新建一个类就行。
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 | package 包名.publics.tools; import android.app.Activity; import java.util.ArrayList; import java.util.List; import java.util.Timer; import java.util.TimerTask; /**  * Title: AtyModule<br/>  * Description: 界面劫持监测方法<br/>  */ public class AtyModule {     /**      * 用于执行定时任务      */     private Timer timer = null;     /**      * 用于保存当前任务      */     private List<MyTimerTask> tasks = null;     /**      * 唯一实例      */     private static AtyModule atyModule;     private AtyModule() {         // 初始化         tasks = new ArrayList<MyTimerTask>();         timer = new Timer();     }     /**      * 获取唯一实例      *      * @return 唯一实例      */     public static AtyModule getinstance() {         if (atyModule == null) {             atyModule = new AtyModule();         }         return atyModule;     }     /**      * 在activity的onPause()方法中调用      *      * @param activity      */     public void onPause(final Activity activity) {         MyTimerTask task = new MyTimerTask(activity);         tasks.add(task);         timer.schedule(task, 2000);     }     /**      * 在activity的onResume()方法中调用      */     public void onResume() {         if (tasks.size() > 0) {             tasks.get(tasks.size() - 1).setCanRun(false);             tasks.remove(tasks.size() - 1);         }     }     /**      * 自定义TimerTask类      */     class MyTimerTask extends TimerTask {         /**          * 任务是否有效          */         private boolean canRun = true;         private Activity activity;         public void setCanRun(boolean canRun) {             this.canRun = canRun;         }         public MyTimerTask(Activity activity) {             this.activity = activity;         }         @Override         public void run() {             activity.runOnUiThread(new Runnable() {                 @Override                 public void run() {                     if (canRun) {                         // 程序退到后台,进行风险警告                         T.showLong(activity, "程序切换至后台运行,请注意观察运行环境是否安全!");                         tasks.remove(MyTimerTask.this);                     }                 }             });         }     } } | 

 
		
Comments | NOTHING