码迷,mamicode.com
首页 > 数据库 > 详细

sendBroadcast无法接收消息可能原因

时间:2018-12-23 11:09:03      阅读:469      评论:0      收藏:0      [点我收藏+]

标签:can   ecif   filter   dbr   ica   注册   无法   nal   cal   

Beginning with Android 8.0 (API level 26), the system imposes additional restrictions on manifest-declared receivers. If your app targets API level 26 or higher, you cannot use the manifest to declare a receiver for most implicit broadcasts (broadcasts that do not target your app specifically).

意思静态注册的广播在8.0以上是不能用,推荐用代码注册广播。
解决方案可以这么做:

配置:

<receiver android:name="MyStart">

    <intent-filter>
<action android:name="com.example.y.myapplication" />
</intent-filter>
</receiver>
代码:
Intent intent = new Intent();
                intent.setComponent(new ComponentName("com.example.y.myapplication","com.example.y.myapplication.MyStart"));
                getApplicationContext().sendBroadcast(intent);

sendBroadcast无法接收消息可能原因

标签:can   ecif   filter   dbr   ica   注册   无法   nal   cal   

原文地址:https://www.cnblogs.com/ylwn817/p/10163290.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!