回答
你可以使用Timer类使用替代的AsyncTask的TimerTask调度周期性任务
参见:
http://developer.android.com/reference/java/util/Timer.html
http://developer.android.com/reference/java/util/TimerTask.html
,并更新你的UI,你应该遵循这个好教程:
http://android-developers.blogspot.com/2007/11/stitch-in-time.html
您可以根据您的要求在您的onProgressUpdate()
或onPostExecute()
上执行此操作。
onProgressUpdate(Progress...)
,在调用publishProgress(Progress ...)后在UI线程上调用。执行的时间是未定义的。此方法用于在后台计算仍在执行时在用户界面中显示任何形式的进度。例如,它可以用来为进度条设置动画效果或在文本字段中显示日志。
onPostExecute(Result)
,在后台计算完成后在UI线程上调用。后台计算的结果作为参数传递给此步骤。
http://developer.android.com/intl/de/reference/android/os/AsyncTask.html
在AlarmReceiver
类设置闹钟与AlarmManager并致电AsyncTask
。
嗨玛莎, Thanx的答案。但是你能告诉我怎样才能调用我的AsyncTask类,这是我的活动的一个内部类? – 2010-09-01 12:25:20
它应该被定义为'公共静态类',并调用它: '(new YourActivity.YourAsyncTask())。execute();' – Macarse 2010-09-01 12:39:13
只是为了说明其中一种可能性。您也可以使用ScheduledThreadPoolExecutor类。它通常具有更多的可能性,然后TimerTask。
要详细说明macarse的回应,您确实可以“set an alarm with AlarmManager and call your AsyncTask in your AlarmReceiver class”。
我在链接的帖子中提出的问题仍然是:我不知道是否有任何与从WakefulBroadcastReceiver实例化AsyncTask相关的生命周期问题,即,我不知道上述解决方案是否会导致到MyAsyncTask过早死亡。
- 1. 在给定的日期时间在JavaScript中执行代码的最佳方式
- 2. 在android中执行多个listviews的最佳方式是什么?
- 3. 在MySQL中运行定期查询的最佳方式
- 4. 执行此操作的最佳方式
- 5. 执行搜索的最佳方式
- 6. 在Android中异步执行方法的最佳方式(紧凑且正确)
- 7. 定期在后台进行Android应用程序轮询的最佳方式
- 8. 在Android中执行时间表的最佳方法?
- 9. 在Android中执行服务的最佳方法
- 10. 在windows中自动执行任务的最佳方式
- 11. 在NodeJs中执行异步卷曲的最佳方式
- 12. 在laravel中执行此查询的最佳方式是什么?
- 13. 在C中执行查找表的最佳方式是什么?
- 14. 在GridView行上执行操作的最佳方式
- 15. 在PHP中执行特定URL阻塞的最佳方法?
- 16. 在UNIX中执行定时器的最佳方法
- 17. Android中处理XML的最佳方式
- 18. android在TableLayout中创建浮动行的最佳方式
- 19. 在Android中进行社交分享的最佳方式
- 20. 在Android上执行单独数据安装的最佳方法
- 21. 处理线程最大执行时间的最佳方式(Java)
- 22. 在ViewController更改之前执行任务的最佳方式
- 23. 在前端执行分页的最佳方式
- 24. 在Python中执行此列表任务的最短/最佳方式
- 25. 确定网站在Visual Studio中运行的最佳方式
- 26. 只在特定页面上执行js的最佳方法
- 27. 在asynctasks前/后执行方法中使用ProgressDialog
- 28. 从Java执行AppleScript的最佳方法
- 29. 避免执行javascript的最佳方法
- 30. 执行PHP挂钩的最佳方法
Thanx :)为我工作。 – 2010-09-02 06:18:42