public class ThreadActivity
extends AppCompatActivity {
ThreadHandler
handler;
@Override
public void onCreate(
@Nullable Bundle savedInstanceState
, @Nullable PersistableBundle persistentState) {
super.onCreate(savedInstanceState
, persistentState)
;
}
@Override
protected void onResume() {
super.onResume()
;
String count = UtilData.
getCount(ThreadActivity.
this)
;
handler=
new ThreadHandler(Integer.
parseInt(count))
;
handler.startAuto()
;
}
@Override
protected void onPause() {
super.onPause()
;
handler.stopAuto()
;
}
}
/**
* 记录驻留时间
*/
public class ThreadHandler
extends Handler
implements Runnable{
private int count; //计时统计
public ThreadHandler(
int count) {
this.
count = count
;
}
@Override
public void run() {
//每过1秒钟切换一次,递归
postDelayed(
this,1000)
;
count+=
1;
}
// 开启计时
public void startAuto() {
//防止开启两次task
removeCallbacks(
this)
;
postDelayed(
this,1000)
;
}
// 停止计时,移除正在使用的线程
public int stopAuto() {
removeCallbacks(
this)
;
return count;
}
}