[android] 短信的广播接收者
比较重要的一个广播事件,短信
界面布局,比如播放视频,默认是横屏全屏的,清单文件中进行设置,
在<activity/>节点设置屏幕朝向属性,android:screenOrientation=”landscape”
设置主题android:theme=”@android:style/Theme.NoTitleBar.FullScreen”
设置清单文件
添加<Receiver/>节点,添加<intent-filter>节点
添加<action/>节点,设置关心的动作名称,
android:name=”android.provider.Telephony.SMS_RECEIVED
添加权限,android.permission.RECEIVE_SMS
新建一个SmsReceiver类继承BroadcastReceiver
在onReceive(Context context,Intent intent)方法中进行处理
调用Intent对象的getExtras()方法,拿到数据,得到Bundle对象
调用Bundle对象的get(key)方法,得到byte[],参数:key这里填 “pdus”,pdu是短信的数据格式,强转成Object[]数组
循环byte[]数组 for(Object pdu:pdus),
每一个循环里面调用SmsMessage类的createFromPdu(pdu),强转Object成 byte[],此时会得到SmsMessage对象
调用SmsMessage对象的getMessageBody()方法,得到短信内容
调用SmsMessage对象的getOriginatingAddress()方法,得到发件人
调用abortBroadcast()方法,直接终止掉这条广播
清单文件中intent-filter节点上,可以设置优先级属性,android:priority=”1000”
广播接收者的优先级,-1000优先级最低,1000优先级最高
[android] 短信的广播接收者的更多相关文章
- Android开发学习—— Broadcast广播接收者
现实中:电台要发布消息,通过广播把消息广播出去,使用收音机,就可以收听广播,得知这条消息.Android中:系统在运行过程中,会产生许多事件,那么某些事件产生时,比如:电量改变.收发短信.拨打电话.屏 ...
- android短信拦截
广播分2种,无序广播和有序广播.可以理解为散列和队列广播. 首先无序广播,不能中断,分发机制有点类似散列发送.这种广播的的发送为:context.sendBroadcast这种广播是不能中断的,请看A ...
- Android学习笔记_19_广播接收者 BroadcastReceiver及其应用_窃听短信_拦截外拨电话
一.广播接收者类型: 广播被分为两种不同的类型:“普通广播(Normal broadcasts)”和“有序广播(Ordered broadcasts)”. 普通广播是完全异步的,可以在同一时刻(逻辑上 ...
- Android 短信广播接收相关问题
本人是Android新手,最近做了一个关于监听手机短信功能的应用,我在网上看资料了解到广播分为有序广播和无序广播,有序广播:无序广播又称普通广播,其中的利弊我也一时没搞清楚,我用的是有序广播实现的,具 ...
- 无废话Android之activity的生命周期、activity的启动模式、activity横竖屏切换的生命周期、开启新的activity获取他的返回值、利用广播实现ip拨号、短信接收广播、短信监听器(6)
1.activity的生命周期 这七个方法定义了Activity的完整生命周期.实现这些方法可以帮助我们监视其中的三个嵌套生命周期循环: (1)Activity的完整生命周期 自第一次调用onCrea ...
- Android短信监听实现,及Android4.4之后短信机制变更
前阵子公司有一个项目,简单的监听短信应用,功能只有如下两个: 1.监听短信并获取短信内容上传服务器: 2.从服务器获取短信内容,发送出去 按照传统的思路,监听短信我们有两种方式:第一种是使用广播 ...
- android短信发送器源代码
Activity类: import java.util.List;import android.app.Activity;import android.app.PendingIntent;import ...
- 【mob】Android短信验证+源码
在很多的应用当中,都涉及到了短信验证的功能,比如在注册或者找回密码的时候,那么我们如何通过第三方的平台来完成这个功能呢? 本面博文就实现短信验证,来做一个小的栗子. 第一步-下载开发包 第二步-将SD ...
- 一枚Android "短信小偷" 病毒的分析
一.样本简介 样本来自于吾爱破解论坛链接地址为http://www.52pojie.cn/thread-410238-1-1.html,样本不是很复杂有空就分析了一下.Android病毒样本还是很有意 ...
随机推荐
- PMP:6.项目进度管理
项目管理包括为项目管理项目按时完成所需的各个过程:
- [转] Firewall and network filtering in libvirt
Firewall and network filtering in libvirt There are three pieces of libvirt functionality which do n ...
- [转] Customizing OpenStack RBAC policies
http://www.florentflament.com/blog/customizing-openstack-rbac-policies.html OpenStack uses a role ba ...
- ASP.NET Core 微服务初探[2]:熔断降级之Polly
当我们从单体架构迁移到微服务模式时,其中一个比较大的变化就是模块(业务,服务等)间的调用方式.在以前,一个业务流程的执行在一个进程中就完成了,但是在微服务模式下可能会分散到2到10个,甚至更多的机器( ...
- java 静态变量 静态代码块 加载顺序问题
在网上看了一个这样的题目 public class StaticTest { public static void main(String[] args) { staticFunction(); } ...
- libgdx学习记录3——动画Animation
libgdx动画采用Animation实现,即通过帧动画实现. 代码如下: package com.fxb.newtest; import com.badlogic.gdx.ApplicationAd ...
- 每天学点SpringCloud(七):路由器和过滤器-Zuul
为什么要使用Zuul 先来看一下下方这个图 假如现在我们具有四个微服务,分别是用户.订单.支付.催收微服务,它们的调用方式分别是使用http.restful.thrift.kafka.这个时候如果我们 ...
- java 堆 栈 方法区的简单分析
Java里的堆(heap)栈(stack)和方法区(method) 基础数据类型直接在栈空间分配, 方法的形式参数,直接在栈空间分配,当方法调用完成后从栈空间回收. 引用数据类型,需要用new来创 ...
- 使用githubpages主题NexT的语法
使用githubpages主题NexT的语法 NexT 前言 不知道为啥?网站总是不出现? 添加「标签」页面 title: 标签测试文章 tags: - Testing - Another Tag - ...
- Spark基础-scala学习(八、隐式转换与隐式参数)
大纲 隐式转换 使用隐式转换加强现有类型 导入隐式转换函数 隐式转换的发生时机 隐式参数 隐式转换 要实现隐式转换,只要程序可见的范围内定义隐式转换函数即可.Scala会自动使用隐式转换函数.隐式转换 ...