0

我正在构建一个应用程序,将URL和Json存储在本地SQLite数据库中,然后计划JobService。将上下文传递给JobService Android JobScheduler

在JobService中,我从数据库中逐个取出所有请求并执行它们。一旦它们被执行,我只在JobService中获得响应。现在我真正的问题是如何从服务中将响应发回给用户。

我想过在活动中实现一个回调/侦听器,并将该值传递给服务中的侦听器对象。但我正在从SQLite数据库中取出请求。所以我不知道如何将回调实例或上下文保存在我的数据库中,这样我就可以将其与服务本身中的其余数据进行比较。

任何想法?

+1

广播接收器 – Selvin

+0

@Selvin但我不知道从哪个活动用户会致电该服务。 –

回答

0

一种方法是使用事件总线实现:LocalBroadcastManager,greenrobot的EventBus,一些基于Rx的总线,或者甚至是一个简单的单身人士。请在巴士上留言。让你的用户界面层在来来往往时从公交车上注册并取消注册。让UI层处理总线上接收到的消息,并在UI层不接收消息时使服务启动Notification

下面是使用示例实现:

+0

我正在构建一个sdk ..所以我不知道开发人员将从何处发送数据。我想用回调方法发送回复hime响应 –

+0

@PrakharSrivastava:“所以我不知道开发人员将从哪里发送数据的活动” - 只要托管应用程序可以访问事件总线,你不知道或不关心数据来自哪里或去哪里。这是事件总线的一个重点:松耦合通信。 – CommonsWare

+0

你能否看看最新的问题? https://stackoverflow.com/questions/45161720/unable-to-implement-callback-in-android?noredirect=1#comment77295408_45161720 –

相关问题