最近写的一个安卓项目里用到了跨应用间广播通信技术,说白点就是在不同的APP之间发送广播来接收消息,我在做的时候也遇到了一些问题,不过最后都解决了,特在此把自己的遇到的问题分享出来,方便遇到同样的问题的朋友能够快速解决。
广播注册分为动态注册和静态注册,如果有人不太明白的话,可以自行度娘一下。之前我使用的是静态注册的方式,但是很麻烦,而且还容易报错。我就遇到MainActivity$MyReceiver; no empty constructor这种错误,后来在百度上看到这种错误,是因为要把自己写的BroadcastReceiver前加上static,但是这样加上的结果就是很多跨进程之间传递的变量就不好用了,所以后来又改成用动态方式注册广播,最后把问题解决了。然后自己写了个小demo,老规矩,还是先上代码吧!
这是第一个APP的内容,其实内容很简单,就只有一个发广播的功能,可以使用Bundle传递很多信息