我想让周期性事件从 AsyncTask 的 doInBackground 中的每个周期性间隔运行。
像这样:
protected Object doInBackground(Object... arg0) {
while (true) {
someThingToDo();
// wait for 1000;
}
}
怎么做 ?
我想让周期性事件从 AsyncTask 的 doInBackground 中的每个周期性间隔运行。
像这样:
protected Object doInBackground(Object... arg0) {
while (true) {
someThingToDo();
// wait for 1000;
}
}
怎么做 ?
您可以使用定时器或闹钟服务。最好使用闹钟服务,因为它可以在设备处于睡眠模式时触发。
您需要创建一个单独的类,它是 Service 类的子类。
http://developer.android.com/reference/android/app/Service.html
您的主应用程序应该可以调用 startService 和 stopService 来启动后台进程。上下文类中还有一些其他有用的调用来管理服务:
否则你可以使用 TimerTask()
试试这个::
class Getphonenumber extends AsyncTask<String, Void, Void> {
public Void doInBackground(String... p) {
while (true) {
someThingToDo();
try {
Thread.sleep(2000);
} catch (Exception ie) {
Log.e("Sleep", "Error: " + ie.toString());
}
}
}
};
我认为可能需要在 AsyncTask 中使用类 Timer。