我正在尝试构建一个REST重的应用程序。
按照Virgil在他的Google I / O演示文稿中提出的其中一个模型,我已经设置了我的应用程序:
我的活动呼叫“服务助手”,这是一个单身人士。这个单例实例化一个服务,该服务在启动时使用ContentProvider命中我的应用程序的数据库并旋转一个线程以访问任何相关同步的Web服务。我现在需要的最后一个部分是对单例进行服务回调,它会回调任何侦听活动。
这是我很困惑的部分。
现在,我正在查看Android SDK提供的RemoteService ApiDemo。在RemoteServiceBinding.java中,IRemoveService成员var被声明为mService。 mService用于处理回调。
但是,这段代码将放在我的服务助手中(记住这是一个单例)。可以有N次调用此类来启动数据库和Web服务功能的服务。我不能只声明一个名为mService的变量,对吧? RemoteService声明了一个ISecondaryService,但我可以有N个代码调用这个单例。它需要是动态的。
例如:
我在这做什么?我很茫然。
如果Twitter应用程序已经开源,那真的很不错......
答案 0 :(得分:0)
我不知道你到底在哪里,但是如果你使用了IntentService,则只需要创建一个Service,而IntentService会在队列中对Context#startService(Intent i)
进行新的调用。
当单个IntentService处理队列时,它们将在IntentService的onHandleIntent(Intent i)
方法中处理。在这种方法中,您可以从传递的Intent中提取额外内容,以确切了解如何处理调用Activity所提出的要求。