我有一个运行后台线程的应用程序,该线程定期执行任务。UI 线程在几个不同的活动中移动。
我使用的教程可以在这个博客上找到,它的要点如下:
- 创建一个扩展 Thread 的类
public final class JSONThread extends Thread {
- 在该类中定义一个方法,将任务添加到 MessageQueue,在可以时提示执行。
public synchronized void enqueueJSON(final JSON.JSON task) {
但是,在我的主要活动中创建初始对象后,导航到另一个活动显然会丢失绑定到我的线程的对象。我不再能够调用该对象上的方法(因此无法添加到队列中)。
我不确定这是由于我在架构方面的错误决定还是由于监督了明显的解决方案造成的。有任何想法吗?请注意,出于此目的,我试图避免使用 AsyncTask,因为一个简单任务的五个线程池似乎有点太多了。