在Android实现广播接收

Android使用过程中,如果你想窃听别人接收到的短信,达到你不可告人的目的,那么本节内容可以实现你的需求。当系统收到短信时,会发出一个action名称为android.provider.Telephony.SMS_RECEIVED的广播Intent,该Intent存放了接收到的短信内容,使用名称“pdus”即可从Intent中获取短信内容。这里面得到对象数组,数组是以二进制数组格式

 
 
 
  1. public class SmsBroadcastReceiver extends BroadcastReceiver {  
  2.         @Override  
  3.         public void onReceive(Context context, Intent intent) {  
  4.                 Object[] pduses=(Object[])intent.getExtras().get("pdus");  
  5.                 for(Object pdus: pduses){  
  6.                         byte[] pdusSms=(byte[])pdus;  
  7.                         SmsMessage smsMessage=SmsMessage.createFromPdu(pdusSms);  
  8.                         String mobile=smsMessage.getOriginatingAddress();//获得发短信手机  
  9.                         String content=smsMessage.getMessageBody();//获得短信内容  
  10.                         Date date= new Date(smsMessage.getTimestampMillis());//获得短信发送时间  
  11.                         SimpleDateFormat simpleDateFormat=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");  
  12.                         String sendDate=simpleDateFormat.format(date);  
  13.                 }  
  14.         }  
  15. }  
  16. 在AndroidManifest.xml文件中的节点里对接收到短信的广播Intent进行订阅:  
  17.  
  18.  
  19. 在AndroidManifest.xml文件中添加以下权限:  
  20.  
  21.  

广播接收者

除了短信到来广播Intent,Android还有很多广播Intent,如:开机启动、电池电量变化、时间已经改变等广播Intent。
 接收电池电量变化广播Intent ,在AndroidManifest.xml文件中的节点里订阅此Intent:。

 
 
 
  1.  
  2.      
  3.           
  4.      
  5.  
  6.  接收开机启动广播Intent,在AndroidManifest.xml文件中的节点里订阅此Intent:  
  7.  
  8.      
  9.           
  10.      
  11.  

并且要进行权限声明:

 
 
 
  1.  

【编辑推荐】

Android开发实例详解之IMF

Android用户界面设计:线性布局

Android用户界面设计:布局基础

谷歌Android UI设计技巧:新的UI设计模式

文章标题:在Android实现广播接收
本文地址:http://www.shufengxianlan.com/qtweb/news6/479506.html

网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联