问题描述
刚接触android,在做一个应用。一个简单的UI,UI只负责启动和停止。然后大部分工作是放在后台运行的,不需要界面,定时联网,然后写数据库,发邮件之类的。考虑了下服务,觉得这么大量的工作使用服务不合适。也看了看asynctask,好像也不太好。打算UI上点开始后直接开一个线程去做这些事情,然后把UI给退掉。这样后台的线程还是在跑的。然后问题是如何下次再启动UI的时候,能从UI上的按钮把这个后台在跑的进程停止了?说白了就是UI怎么去控制一个不是他自己创建的线程(他以前的UI创建)?或者说,这里不应该用线程?还是不应该把UI给退掉,而只是不显示?
解决方案
建个service,参考http://blog.csdn.net/21cnbao/article/details/8086487
解决方案二:
你既然有办法创建它~为什么没有办法控制它~~你的疑问无非在于我如果通知一个我没有引用的线程~~其实很容易~~~你要么这个线程只有一个~~~也就是静态的~~~当你发现已经启动过了就不再启动就是了~~~要么你在线程和你持有对象直接加一个控制类~一般是所谓的线程池~~~让线程池来控制线程的回收~~~~
解决方案三:
http://stackoverflow.com/questions/2857101/schedule-task-in-android
时间: 2024-09-13 12:48:50