1. 请描述一下Broadcast Receiver。

    定义:接收自己或其他App发送的Broadcast

    好处:群发消息

    使用:code  XML

         

    广播分类:无序、有序

     

     

    回答问题的思路:

  2. 是什么

  3. 功能/作用/好处

  4. 如何使用

           各种实现方式的区别

    概念:

    是什么:接收广播消息, 自己发,

    系统发:接收到外部事件,发送广播消息

    广播分为:无序(并行) 有序(串行)

    intent-filterandroid:priority="3000’

    abortbroadcast();

     

    广播 android操作系统的一个事件

    有很多广播接收者 ,系统已经实现了.

    广播分两种

    有序广播

    无序广播

    指定接收者的广播 .  是不可以被拦截掉的 

    <intent-filterandroid:priority="1000"> 那个程序的uid 越低越先接受到消息

    <action android:name="android.provider.Telephony.SMS_RECEIVED"/>

    </intent-filter>

    onReceive() 方法.

    abortBroadcast();

     

    有序广播有一个特例

    sendOrderedBroadcast(intent, receiverPermission, resultReceiver,scheduler, initialCode, initialData, initialExtras);

    resultReceiver广播接受者如果我们显示的指定了广播接收者

    无论如何都会接受广播时间abortBroadcast(); 的方法不会终止广播时间

    SetresultData(); 

    Sticky

    sendStickyBroadcast(intent)  // 阴魂不散的广播

    Wifi设置

     用于接收系统的广播通知, 系统会有很多sd卡挂载,手机重启,广播通知,低电量,来短信等,一个apk的安装成功….

     手机卫士中自定义一个broadcast receiver

    <intent-filter  android:><action> sms_received</action></intent-filter>

     

    来获取短信到来的广播, 根据黑名单来判断是否拦截该短信.

     

     画画板生成图片后,发送一个sd挂载的通知,通知系统的gallery去获取到新的图片.

    Intentintent = newIntent(Intent.ACTION_MEDIA_MOUNTED,Uri.parse("file://"+Environment.getExternalStorageDirectory()));

    sendBroadcast(intent);