`
- 浏览:
242423 次
- 性别:
- 来自:
北京
-
ERROR/AndroidRuntime(11761): java.lang.IllegalStateException: TimerTask is sche
android应用开发中常常会用到定时器,不可避免的需要用到 TimerTask 定时器任务这个类
下面简单的一个示例演示了如何使用TimerTask
这个示例演示了3秒未有触屏事件发生则锁屏(只是设置下文本,意思一下)有触屏事件则解除锁定
public class ColTimerTaskActivity extends Activity {
/** Called when the activity is first created. */
private final String TAG = "ColTimerTaskActivity";
private final int EVENT_LOCK_WINDOW = 0x100;
private TextView textView;
private Handler mHandler;
private Timer mTimer;
private MyTimerTask mTimerTask;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
textView = (TextView)findViewById(R.id.textview);
mHandler = new Handler(){
public void handleMessage(Message message){
Log.i(TAG, "message what = " + message.what);
if (message.what == 0x100){
lockWindow();
}
}
};
mTimer = new Timer(true);
resumeWindow();
StartLockWindowTimer();
}
public boolean onTouchEvent(MotionEvent event)
{
// TODO Auto-generated method stub
resumeWindow();
StartLockWindowTimer();
return super.onTouchEvent(event);
}
public void resumeWindow(){
textView.setText("main window");
}
public void lockWindow(){
textView.setText("lock window");
}
public void StartLockWindowTimer(){
if (mTimer != null){
if (mTimerTask != null){
mTimerTask.cancel(); //将原任务从队列中移除
}
mTimerTask = new MyTimerTask(); // 新建一个任务
mTimer.schedule(mTimerTask, 3000);
}
}
class MyTimerTask extends TimerTask{
@Override
public void run() {
// TODO Auto-generated method stub
Log.i(TAG, "run...");
Message msg = mHandler.obtainMessage(EVENT_LOCK_WINDOW);
msg.sendToTarget();
}
}
}
这里需要注意两个问题:
if (mTimerTask != null){
mTimerTask.cancel(); //将原任务从队列中移除
}
每次放定时任务前,确保之前任务已从定时器队列中移除
mTimerTask = new MyTimerTask(); // 新建一个任务
每次放任务都要新建一个对象,否则出现一下错误:
ERROR/AndroidRuntime(11761): java.lang.IllegalStateException: TimerTask is scheduled already
所以同一个定时器任务只能被放置一次
分享到:
Global site tag (gtag.js) - Google Analytics
相关推荐
08-13 18:29:22.924: E/AndroidRuntime(1875): Caused by: Java.lang.ClassNotFoundException:XXXXX in loader dalvik.system.PathClassLoader[/data/app/XXXX.apk] 我想大家经常因为疏忽出现...
2.java.lang.IllegalStateException: Adapter is detached. 原因: 1.单线程一次执行一个请求可以正常执行,如果使用多线程,同时执行多个请求时就会出现连接超时. 2.HttpConnection没有连接池的概念,多少次请求就...
05-27 15:35:11.487 E/AndroidRuntime( 2352): java.lang.RuntimeException: Unable to create service com.android.systemui.keyguard.KeyguardService: java.lang.SecurityException: read wallpaper: Neither ...
Exception in thread "main" java.lang.NoClassDefFoundError: org/eclipse/core/runtime/IProgressMonitor at java.lang.Class.getDeclaredMethods0(Native Method) at java.lang.Class....
java.lang.NullPointerException: Attempt to invoke virtual method ‘void android.widget.ImageView.setImageResource(int)’ on a null object reference 今天在家练习ListView的时候,遇到一个java.lang....
E/AndroidRuntime: FATAL EXCEPTION: main android.view.InflateException: Binary XML file line #13: Error inflating class at android.view.LayoutInflater.createView(LayoutInflater.java:613) at ...
启动eclipse 时出现错误警告
Simpliest way to ask runtime permissions on Android, choose your way : Kotlin Kotlin with Coroutines RxJava Java8 Java7 No need to override Activity or FragmentonPermissionResult(code, permissions,...
AndroidRuntime: java.lang.UnsatisfiedLinkError: Couldn’t load airtalkee from loader dalvik.system.PathClassLoader[DexPathList[[zip file “/system/app/POCM3A.apk”, zip file “/data/data/com.cmccpo
注意!!!!这个jar仅支持commons-lang-3.x 注意!!!!这个jar仅支持commons-lang-3.x ...Caused by: java.lang.ClassNotFoundException: org.apache.commons.lang.exception.NestableRuntimeException
arcgis-runtime-sdk-android-100.6.0
演示:http://139.9.199.61:1004/ 账号:18000000000 密码:123456 后台:... 前端VUE,具体请查看演示,演示功能与演示站一模一样的. ...运行目录设置为 public ...如遇后台报错请删除缓存,runtime里面的文件
前言本博客所写到的是我在Linux云服务器升级编译内核时所遇到的真实问题,已解决。编译内核遇到的问题太多了。问题描述 在进行内核编译的时候,提sha1加密 C语
ArcGIS for Android的sdk,可以用Android studio编译示例代码。
apparmor.security.beta.kubernetes.io/allowedProfileNames: runtime/default apparmor.security.beta.kubernetes.io/defaultProfileName: runtime/default spec: privileged: false volumes: - config...
golang学习笔记,第六版的下卷。高清无水印pdf
友情提示:缺少SWT包,自己去官方网站(http://www.eclipse.org/swt/)下载最新的,解决java.lang.NoClassDefFoundError: org/eclipse/core/runtime/IProgressMonitor和java.lang.NoClassDefFoundError: org/eclipse...
在arcgis开发者官网下载的rumtime 100.11开发包,由于官网抽风经常上不去,我下载了上传造福大家
runtime library [libssl.so.1.1] in /usr/lib/x86_64-linux-gnu may be hidden by files in: /home/rw/anaconda3/lib 首先查看路径,可以看到返回结果中,第一个查找路径是anaconda的。 export $PATH bash: export...