我正在寻找在这里设计我的应用的正确方法。
我有5个活动,每个活动都调用一个单独的DB方法(更新,插入,删除..etc)。 我想知道,不是创建5个asynctask类,而是每个属于要调用的活动的私有类,是否可以创建一个asynctask类,以便在所有活动中实例化其对象?
在C ++中,你可以传递“一个完整的方法”来执行,这样我就可以创建一个assign任务并传递一个方法给它执行,但我不确定我能用Java做到这一点。或者你心目中最好的做法是什么?
谢谢
答案 0 :(得分:1)
检查Runnable
班级。
Runnable
表示可以执行的任务。您需要实现它run()
您可以将Runnable
的实例传递给AsyncTask
并使用doInBackground(...)
方法执行。
可能有更好的方法可以做到这一点,但这是我现在唯一想到的事情。
答案 1 :(得分:1)
我不确定这是否适合您的账单,但我建议您创建一个IntentService,它会自动和异步地排队您的数据库/内容提供商读取和写入。
您可以编写单独的读取,写入和更新方法,这些方法将在IntentService的onHandleIntent方法中处理。意图服务保证
对于ListView / Adapter访问,请考虑使用loaders