参考博客:https://blog.csdn.net/chuyouyinghe/article/details/79424373

照着书上的源码将程序原封不动敲了一遍,但发现这特么怎么也收不到发出的广播

  1.  
    <receiver android:name=".MyBroadCastReceiver"
  2.  
    android:permission="com.example.Broadcasttest.MY_BROADCAST">
  3.  
    <intent-filter>
  4.  
    <action android:name="com.example.Broadcasttest.MY_BROADCAST"/>
  5.  
    </intent-filter>
  6.  
    </receiver>
  7.  
    </application>

如上代码,我在manifest中也注册了

再看这里

  1.  
    Button button = (Button) findViewById(R.id.button);
  2.  
    button.setOnClickListener(new View.OnClickListener(){
  3.  
    @Override
  4.  
    public void onClick(View v){
  5.  
    Intent intent = new Intent();
  6.  
    intent.setAction("com.example.Broadcasttest.MY_BROADCAST");
  7.  
    sendBroadcast(intent);
  8.  
    }
  9.  
    });

心里当时一万个草泥马路过,我在自定义的广播接收类里面的onReceive里面用Log打印了信息,发现这个函数压根就没有运行,于是我上网百度了一波.不得不说这个地方还是相当的坑的

因为,我用的虚拟机的安卓版本是8.0,但是,8.0,取消了大部分静态注册!!!

一般来说,出现自定义的广播接收器接收不到信息的原因,有如下几个

1,Manifest里面没有注册

2,注册了但是Action里面那个android:name与Intent.setAction()的参数不匹配

3,就是系统的原因了,前两个一般设置代码跟踪可以找得出,但第三个一般不容易,只能上网查一查了

所以这里这个问题的解决办法就只能是将虚拟机的安卓版本调低一点.好像是7.0以下都能

Android-自定义广播不能用的可能的原因(sendbroadcast 不起效果)的更多相关文章

  1. [android] 自定义广播事件

    上一节的短信拦截在4.0以上系统中无效,可以使用这种办法实现,定义一个activity,清单文件中指定主题为透明,在onCreate()方法里面直接调用finsh()方法,关掉,这样可以就可以实现了 ...

  2. Android 自定义圆形旋转进度条,仿微博头像加载效果

    微博 App 的用户头像有一个圆形旋转进度条的加载效果,看上去效果非常不错,如图所示: 据说 Instagram 也采用了这种效果.最近抽空研究了一下,最后实现的效果是这样: 基本上能模拟出个大概,代 ...

  3. Android之 广播

    (以下内容是阅读郭霖大神的<第一行代码>后自己总结的) 1.概述 广播是Android的四大组件之一. Android的广播机制十分灵活. 2.发送广播 如上图Android的广播主要分为 ...

  4. android自定义viewgroup之我也玩瀑布流

    先看效果图吧, 继上一篇<android自定义viewgroup实现等分格子布局>中实现的布局效果,这里稍微有些区别,每个格子的高度不规则,就是传说的瀑布流布局,一般实现这种效果,要么用第 ...

  5. android 发送自定义广播以及接收自定义广播

    发送自定义广播程序: 布局文件: <?xml version="1.0" encoding="utf-8"?> <LinearLayout x ...

  6. Android(java)学习笔记178:BroadcastReceiver之 自定义广播

    广播使用:               电台:对外发送信号.---------电台发送广播(可以自定义)               收音机:接收电台的信号.-----广播接收者 这里,我们就说明自定 ...

  7. android: 发送自定义广播

    5.3.1    发送标准广播 在发送广播之前,我们还是需要先定义一个广播接收器来准备接收此广播才行,不然发 出去也是白发.因此新建一个 MyBroadcastReceiver 继承自 Broadca ...

  8. 自定义广播(BroadcastReceiver)事件 --Android开发

    本例演示自定义广播事件.我们需要做的是,在主活动中写发送广播的代码,然后在接收广播的类中写接收广播的代码. 1.主活动中点击按钮后发送广播 MainActivity.java: public clas ...

  9. android中实现自定义广播

    自定义广播分两个步骤:1.发送广播 2.接收广播 一.先看如何接收广播: 我使用的是Android Studio,File->New->Other->Broadcast Receiv ...

随机推荐

  1. 移动开发平台 apicloud、wex5

    http://www.apicloud.com/deepengine http://www.wex5.com

  2. python3字符串操作总结

    字符串截取  >>>s = 'hello' >>>s[0:3] 'he' >>>s[:] #截取全部字符 'hello' 消除空格及特殊符号 s. ...

  3. pylint & jenkins

    利用pylint 检测 python源码. Pylint 提供了简单的方式来分析 Python 代码,其高可配置性很容易使一个部门的人员使用统一的代码风格. Pylint 是什么 Pylint 是一个 ...

  4. 洛谷 P1328 生活大爆炸版石头剪刀布【模拟/环/周期】

    题目描述 石头剪刀布是常见的猜拳游戏:石头胜剪刀,剪刀胜布,布胜石头.如果两个人出拳一样,则不分胜负.在<生活大爆炸>第二季第8 集中出现了一种石头剪刀布的升级版游戏. 升级版游戏在传统的 ...

  5. luogu P3116 [USACO15JAN]会议时间Meeting Time

    题目描述 Bessie and her sister Elsie want to travel from the barn to their favorite field, such that the ...

  6. inux 下的/etc/profile、/etc/bashrc、~/.bash_profile、~/.bashrc 文件的作用

    /etc/bashrc:为每一个运行bash shell的用户执行此文件.当bash shell被打开时,该文件被读取. ~/.bash_profile:每个用户都可使用该文件输入专用于自己使用的sh ...

  7. ARM Linux系统调用的原理

    转载自:http://blog.csdn.net/hongjiujing/article/details/6831192 ARM Linux系统调用的原理 操作系统为在用户态运行的进程与硬件设备进行交 ...

  8. Fresco对Listview等快速滑动时停止加载

    Fresco中在listview之类的快速滑动时停止加载,滑动停止后恢复加载: 1.设置图片请求是否开启 // 暂停图片请求 public static void imagePause() { Fre ...

  9. OFV.msi是什么 为什么更新时无法安装

    在网络上搜索了下 这个是Microsoft Office 文件验证加载项,微软提供了一个单独的文件:http://www.microsoft.com/downloads/zh-cn/confirmat ...

  10. JAVA实现EXCEL公式专题(四)——字符串函数

    直接上代码: /** * 项目名称: * 文件说明: ExCEL公式类型:字符串公式 * 主要特点: * 版本:1.0 * 制作人:刘晨曦 * 创建时间:2013-12-3 **/ package E ...