`

Mars视频笔记——广播机制2

阅读更多

1 注册BroadcastReceiver的方法

BroadcastReceiver用于监听被广播的事件(Intent)

2种注册方法

(1)在应用程序代码中注册

注册BroadcastReciver:

registerReceiver(receiver,filter);

取消注册:

unregisterReceiver(receiver);

如果一个BroadcastReceiver用于更新UI,那么通常用代码方式

在Activity启动时注册BroadcastReceiver,在Activity不可见后取消注册

eg:

//生成一个BroadcastReceiver对象

smsReceiver = new SMSReceiver();//比如

//生成一个IntentFilter对象

IntentFilter filter = new IntentFilter();

//为filter添加一个Action

filter.addAction(android.provider.Telphony.SMS_RECEIVED);

//注册 (同理 解除绑定Activity.this.unregisterReceiver(smsReceiver);)

Activity.this.registerReceiver(smsReceiver,filter);

 

在Receiver类的onReceive方法中

通过Bundle bundle=intent.getExtras()得到intent中的数据

Object[] myOBJpdus=(Object[])bundle.get("pdus");

Bundle对象的一个属性pudus

SmsMessage[] message=new SmsMessage(myOBJpdus.length);

创建SmsMessage数组

通过for循环得到短消息内容

for(int i=0;i<myOBJpdus.length;i++){

message[i]=SmsMessage.createFromPdu((byte[])myOBJpuds[i]);

System.out.println(message[i].getDisplayMessageBody());

调用SmsMessage的getDisplayMessageBody()方法得到最终内容

}

 

(2)在AndroidManifest.xml中注册

注意 该方法注册时 即使应用程序已经关闭 仍保持活动状态 继续监听广播

<receiver android:name="类">

<intent-filter>

<action ....../>

</intent-filter>

</receiver>

 

2 Android内置的BroadcastActions

ACTION_CAMERA_BUTTON

ACTION_BATTERY_LOW

ACTION_DATE_CHANGED

ACTION_POWER_CONNECTED

ACTION_REBOOT

ACTION_SCREEN_ON

SDK中的Intent部分中的BroadcastAction

 

******

在DDMS中的EmulatorControl中可以模拟发送短信等其他事项

分享到:
评论

相关推荐

    Mars(战神)——资产发现.zip

    Mars(战神)——资产发现、子域名枚举、C段扫描、资产变更监测、端口变更监测、域名解析变更监测、Awvs扫描、POC检测、web指纹探测、端口指纹探测、CDN探测、操作系统指纹探测、泛解析探测、WAF探测、敏感信息检测...

    contentProvider mars的视频笔记

    这里是个人在看mars的contentprovider中的做记录的一些笔记,因为这章没有源码,所以做了点笔记下来仔细看看,不需要的同志不需要下哦

    mars老师android视频学习笔记

    mars老师android视频学习笔记,mars老师讲解细致,这套笔记记得非常全面

    Mars Android视频教程的笔记

    8. **广播机制.doc** - 广播接收器(BroadcastReceiver)是Android中事件驱动编程的一部分,用于监听系统或应用广播事件。这部分涵盖广播注册、自定义广播和有序广播的概念。 9. **JSON.doc** - JSON(JavaScript ...

    mars老师android视频第一季到第五季源码及视频合集

    在视频中,mars老师会详细讲解如何利用这些组件和机制构建功能丰富的应用。此外,还会涉及异步处理(如AsyncTask和Loader)以及网络编程(如HttpURLConnection和OkHttp),这些都是现代Android应用不可或缺的部分。 ...

    mars视频教程源码全集下载(35集全)

    mars视频教程是初学android者首选的经典网上教程,mars老师语言幽默风趣、逻辑条理清晰,可以让初学者对android有个很好的入门学习,该资源是网上mars视频教程的全部源代码,初学者可以结合网上教程和源代码进行学习...

    Mars老师视频源代码

    《Mars老师视频源代码详解——深入Android编程实践》 Mars老师的视频源代码是一份宝贵的教育资源,专注于Android平台的开发。这份源代码是Mars老师在教学过程中使用的实例,旨在帮助学习者深入理解Android应用的...

    android mars视频代码 Broadcast TestBC2源码 BroadcastReceiver

    android mars视频代码 Broadcast TestBC2源码 BroadcastReceiver www.mars-droid.com/Android开发视频教程 代码 源码 mars老师讲课 android 视频源码(在此特别感谢mars的无私奉献,此代码为跟随视频边学边做的)

    Android开发mars视频教学第二季+源码和ppt.rar

    在本资源包“Android开发mars视频教学第二季+源码和ppt.rar”中,您将获得深入学习Android应用开发的宝贵材料,特别是针对Mars框架的使用。这个压缩包包含了视频教程、源代码以及相关的PPT,旨在帮助开发者提升...

    mars android视频源码

    【标题】"mars android视频源码"涉及到的知识点主要集中在Android开发领域,特别是与Mars相关的部分,这可能是一个开源项目或教学资源。Mars通常指的是火星,但在编程语境中,它可能是一个专用于Android开发的框架...

    mars老师视频源码

    【标题】"mars老师视频源码"所涉及的知识点主要围绕着编程教学、软件开发以及可能涵盖的编程语言和技术栈。Mars老师作为一位知名的IT教育专家,他的视频源码通常会包含一系列与编程相关的实践项目,旨在帮助学生或...

    Mars视频行人重识别数据集

    整个Mars数据的大小大概有6.3G,有两个名称为bbox_train和 bbox_test的文件夹。 同时你还应该下载一个关于数据集信息的info文件夹。info文件夹不包括在原始数据集中,下载地址为...

    android mars视频代码 wifi 源码

    6. **UI交互**:在视频教程中,Mars老师可能会演示如何将WiFi功能与用户界面结合,例如,创建一个列表显示扫描到的网络,用户可以选择并连接。这涉及到`ListView`、`Adapter`等组件的使用。 7. **异步处理**:考虑...

    Mars安卓视频教程第一季重制版全集

    根据提供的文件信息,我们可以推断出这是一套关于Mars安卓视频教程的第一季重制版全集的内容。接下来,我们将详细解析与该教程相关的知识点。 ### Mars安卓视频教程概述 Mars安卓视频教程旨在帮助开发者掌握...

    mars 视频源码

    2. **多媒体框架**:Mars视频源码可能包含一个自定义的多媒体框架,用于管理和协调解码、渲染、音视频同步等操作。这样的框架可以帮助开发者更方便地集成视频播放功能。 3. **视频渲染**:解码后的像素数据需要在...

    android mars视频代码 Activity Activity_03源码

    www.mars-droid.com/Android开发视频教程 代码 源码 mars老师讲课 android 视频源码 Activity_03 (在此特别感谢mars的无私奉献,此代码为跟随视频边学边做的)

    android mars视频代码 Broadcast TestBC源码 BroadcastReceiver

    android mars视频代码 Broadcast TestBC源码 BroadcastReceiver www.mars-droid.com/Android开发视频教程 mars老师讲课 android 视频源码(在此特别感谢mars的无私奉献,此代码为跟随视频边学边做的)

    mars android视频课程代码

    2. **网络通信**:Mars提供了强大的网络通信模块,支持HTTP/HTTPS协议,同时包含异步请求处理和响应缓存机制。学习这部分内容,你需要理解网络请求的基本原理,以及如何在Android中实现异步任务。 3. **数据库管理*...

    android mars视频代码 Handler 源码 HandlerTest2

    www.mars-droid.com/Android开发视频教程 代码 源码 mars老师讲课 android 视频源码 Handler HandlerTest2(在此特别感谢mars的无私奉献,此代码为跟随视频边学边做的)

Global site tag (gtag.js) - Google Analytics