活动未收到来自服务的本地广播

S

ActivityBroadcastReceiver本地注册如下:

public class SomeActivity extends Activity{

    public static final String PERFORM_SOME_ACTION = "PERFORM_SOME_ACTION";

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.some_activity_layout);

        .....
        .....

        IntentFilter filter = new IntentFilter();
        filter.addAction(PERFORM_SOME_ACTION);

        receiver = new BroadcastReceiver() {
            @Override
            public void onReceive(Context context, Intent intent) {
                // perform some action ...
            }
        };

        registerReceiver(receiver, filter);
    }

    .....
    .....
}

Service从中播出了Intent如下内容:

@Override
public int onStartCommand(Intent intent, int flags, int startId) {        

    Intent i = new Intent(SomeActivity.PERFORM_SOME_ACTION);
    sendBroadcast(i);   /* Send global broadcast. */

    return START_STICKY;
}

这按预期工作。实施此方法后,我意识到本地广播将更适合这种情况:

@Override
public int onStartCommand(Intent intent, int flags, int startId) {        

    Intent i = new Intent(SomeActivity.PERFORM_SOME_ACTION);
    LocalBroadcastManager.getInstance(this).sendBroadcast(i);   /* Send local broadcast. */

    return START_STICKY;
}

不幸的是,以上方案不起作用。每次都会发送全局广播,而本地广播显然从不发送/接收。

我在这里想念什么?不能在两个不同的应用程序组件之间(例如两个单独的Activitys或从aServicea)发送本地广播Activity吗?我究竟做错了什么??

笔记:

按照该文件,更高效,更重要的是发送一个本地广播(一个内部应用程序广播,其范围仅限于应用程序本身的组成部分),而不是全局广播(一个应用程序内间被发送到广播每当我们不需要广播就可以在应用程序外部传播时,就可以使用手机上的每个应用程序)。这就是进行上述更改的原因。

ρяσsρєяK

我在这里想念什么?

使用LocalBroadcastManager用于登记LocalBroadcast,目前使用registerReceiver其用于登记全球广播活动的方法:

LocalBroadcastManager.getInstance(this).registerReceiver(receiver, filter);

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

我的活动没有收到来自 GPS 服务的广播

来自分类Dev

Android-无法通过服务接收我的活动中的本地广播

来自分类Dev

设备未收到来自GCM的消息

来自分类Dev

TCP 服务器未收到来自 TCP 客户端的消息 (Java)

来自分类Dev

我们可以使用本地广播接收器在活动和服务之间进行通信吗?

来自分类Dev

iOS:未收到来自Facebook App请求的通知

来自分类Dev

iOS:未收到来自Facebook App请求的通知

来自分类Dev

Java套接字未收到来自Print Writer的响应

来自分类Dev

Google Apps邮件未收到来自自己域的邮件

来自分类Dev

获取未收到来自 Node Js 的错误消息

来自分类Dev

UDP连接未收到来自服务器的任何答复-Python(可能还会使用boost的c ++)

来自分类Dev

BroadcastReceiver 没有收到来自正确动作意图的广播

来自分类Dev

指令未收到广播

来自分类Dev

本地广播空指针异常

来自分类Dev

如何知道何时收到来自服务器的响应?

来自分类Dev

无法收到来自远程服务器的响应

来自分类Dev

Windows Phone应用程序未收到来自Parse.com的推送通知

来自分类Dev

NodeJS + Cpanel错误:未收到来自应用程序的响应(Node js,Express,Mongoose)

来自分类Dev

Windows应用商店应用未收到来自WNS的推送通知

来自分类Dev

爆炸一些消息后未收到来自 firebase 的通知

来自分类Dev

未收到来自 AWS/Lamda 的 SMS 文本但没有错误

来自分类Dev

Tibco 未收到来自 citrus-test 的 Citrus JDBC 消息

来自分类Dev

反应本地广播并发现附近的设备

来自分类Dev

在Windows Phone 8.1中发送本地广播消息

来自分类Dev

服务中的广播接收器未收到警报信号

来自分类Dev

因意图呼叫而未收到广播

来自分类Dev

Android:指定动作后未收到广播

来自分类Dev

广播接收器未收到意图

来自分类Dev

多个POST请求后我没有收到来自服务器的数据

Related 相关文章

  1. 1

    我的活动没有收到来自 GPS 服务的广播

  2. 2

    Android-无法通过服务接收我的活动中的本地广播

  3. 3

    设备未收到来自GCM的消息

  4. 4

    TCP 服务器未收到来自 TCP 客户端的消息 (Java)

  5. 5

    我们可以使用本地广播接收器在活动和服务之间进行通信吗?

  6. 6

    iOS:未收到来自Facebook App请求的通知

  7. 7

    iOS:未收到来自Facebook App请求的通知

  8. 8

    Java套接字未收到来自Print Writer的响应

  9. 9

    Google Apps邮件未收到来自自己域的邮件

  10. 10

    获取未收到来自 Node Js 的错误消息

  11. 11

    UDP连接未收到来自服务器的任何答复-Python(可能还会使用boost的c ++)

  12. 12

    BroadcastReceiver 没有收到来自正确动作意图的广播

  13. 13

    指令未收到广播

  14. 14

    本地广播空指针异常

  15. 15

    如何知道何时收到来自服务器的响应?

  16. 16

    无法收到来自远程服务器的响应

  17. 17

    Windows Phone应用程序未收到来自Parse.com的推送通知

  18. 18

    NodeJS + Cpanel错误:未收到来自应用程序的响应(Node js,Express,Mongoose)

  19. 19

    Windows应用商店应用未收到来自WNS的推送通知

  20. 20

    爆炸一些消息后未收到来自 firebase 的通知

  21. 21

    未收到来自 AWS/Lamda 的 SMS 文本但没有错误

  22. 22

    Tibco 未收到来自 citrus-test 的 Citrus JDBC 消息

  23. 23

    反应本地广播并发现附近的设备

  24. 24

    在Windows Phone 8.1中发送本地广播消息

  25. 25

    服务中的广播接收器未收到警报信号

  26. 26

    因意图呼叫而未收到广播

  27. 27

    Android:指定动作后未收到广播

  28. 28

    广播接收器未收到意图

  29. 29

    多个POST请求后我没有收到来自服务器的数据

热门标签

归档