java - 涉及回调的Service如何获取数据到Activity?

标签 java android android-intent android-service android-activity

这是场景,

  • 我想从服务获取数据到 Activity

  • 每当服务从服务器获取新数据时,都会自动调用以下函数(回调)

public voidpublishArrived(blah, blah) { //这里进行一些操作 }

  • 如何将从上述函数获取的数据返回到我的 Activity 中? (我想我应该在这里使用“Messenger”,但我无法理解这个概念)

上下文:在我的 Activity 中,我执行登录操作,其成功取决于到达publishArrived的上述结果。

提前致谢。

最佳答案

假设你需要同时启动activity和service(而不是在service中接收到数据后才启动activity)你可以在你的activity中注册一个BroadcastReceiver,然后从service发送一次广播消息你有数据。

在您的 Activity 中注册广播接收器的代码与此类似,但您将定义自己的自定义消息:
https://stackoverflow.com/a/2959290/483708

要从您的服务发送自定义广播,您将使用此(从 http://www.vogella.de/articles/AndroidServices/article.html 提升):

Intent intent = new Intent();
intent.setAction("de.vogella.android.mybroadcast");
sendBroadcast(intent);

关于java - 涉及回调的Service如何获取数据到Activity?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9863283/

相关文章:

java - 当子类和父类都是内部类时,Java 中的继承行为

Android 静态变量作用域和生命周期

java - 如何在 Google map Activity 中使用 LatLng

java - 当应用程序在后台时无法从 Intent 中获取额外信息

android - data.getExtras().get ("data") android 中低分辨率图像的结果

java - 针对 Active Directory 的 LDAP 身份验证可接受的 SECURITY_PRINCIPAL 格式是什么?

java - 如果类与客户端一起分发,分布式 RMI 是否可以在没有 HTTP 服务器的情况下实现?

java - SensorSimulator 在连接时抛出错误

java - 找不到符号 setonClickListener

java - 如何使用 Java 流在第一个和最后一个嵌套对象之间创建映射<k,v>?