项目中遇见一个这样的需求,就是当软件在一定时间没有操作时候需要弹出广告页面,当点击广告页面时又进行软件操作,也就是广告要在软件打开并且处于未操作状态才会出来。
这个操作最好放到BaseActivity里进行。
private
Handler handler =
new
Handler();
private
long
time=
1000
*
60
*
5
;//设置五分钟
@Override
public
boolean
onTouchEvent(MotionEvent event) {
switch
(event.getAction()) {
case
MotionEvent.ACTION_DOWN:
handler.removeCallbacks(runnable);
break
;
case
MotionEvent.ACTION_UP:
startAD();
break
;
}
return
super
.onTouchEvent(event);
}
private
Runnable runnable =
new
Runnable() {
@Override
public
void
run() {
//实现一段时间无操作时执行的事件
}
};
public
void
startAD() {
handler.removeCallbacks(runnable);
handler.postDelayed(runnable, time);
}
还有一点就是执行这些操作手机最好不要息屏,在onCreate中加入
//防止手机息屏
getWindow().setFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON, WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);
结束完活。
如果觉得《android程序运行无操作一段时间显示屏保》对你有帮助,请点赞、收藏,并留下你的观点哦!