android跨应用发广播

本文介绍了在安卓项目中实现跨应用广播通信的过程,包括遇到的问题和解决方案。重点讨论了动态注册与静态注册广播的区别,特别指出静态注册可能导致的错误,如MainActivity$MyReceiver; no empty constructor,并提供了解决方案——将BroadcastReceiver声明为static。最终采用动态注册成功实现跨进程广播,同时附带了一个简单的发送广播的代码示例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

    最近写的一个安卓项目里用到了跨应用间广播通信技术,说白点就是在不同的APP之间发送广播来接收消息,我在做的时候也遇到了一些问题,不过最后都解决了,特在此把自己的遇到的问题分享出来,方便遇到同样的问题的朋友能够快速解决。

    广播注册分为动态注册和静态注册,如果有人不太明白的话,可以自行度娘一下。之前我使用的是静态注册的方式,但是很麻烦,而且还容易报错。我就遇到MainActivity$MyReceiver; no empty constructor这种错误,后来在百度上看到这种错误,是因为要把自己写的BroadcastReceiver前加上static,但是这样加上的结果就是很多跨进程之间传递的变量就不好用了,所以后来又改成用动态方式注册广播,最后把问题解决了。然后自己写了个小demo,老规矩,还是先上代码吧!

    这是第一个APP的内容,其实内容很简单,就只有一个发广播的功能,可以使用Bundle传递很多信息

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值