0

在我的应用程序中,我使用服务并且需要为 CRUD 操作调用我的 DAO 方法。在我的 DAO 中有几个方法。这些方法必须称为 AsyncTask,但我的问题是如何调用我的 DAO 的方法而无需为我的DAO 的每个方法创建一个AsyncTask?

例如:我需要按以下顺序在 AsyncTask 中调用 DAO 方法:

MyService -> MyDAO.getAll()
MyService -> MyDAO.insertItem()
MyService -> MyDAO.deleteItem()

有什么模式可以做到这一点吗?或最佳实践..

4

1 回答 1

0

您可以使用 IntentService,它是一种在 UI 线程之外运行的特殊服务(就像 AsyncTask 一样),因此您可以毫无问题地使用 DAO。

您还可以在 Service 中创建并启动一个普通的 java 线程,并在那里进行所有后台处理,然后在线程死亡时从该线程调用服务 stopSelf()。

于 2013-09-23T21:06:45.567 回答