发送与接收短信


创新互联2013年开创至今,先为兴业等服务建站,兴业等地企业,进行企业商务咨询服务。为兴业企业网站制作PC+手机+微官网三网同步一站式服务解决您的所有建站问题。

权限:



< uses-permission android:name="android.permission.SEND_SMS">

发送短信:

1. 获得默认的消息管理器

2. 通过sendTextMessage发送短信。

SmsManager sm = SmsManager.getDefault();
sm.sendTextMessage("1888888XXX", null, str, null, null);

 

接收短信

收到短信时,会发出一个action名称为android.provier.Telephony.SMS_RECEIVED的广播Intent,该Intent存放了接管到的短信内容,应用名称 “pdus”即可从Intent中获取短信内容

registerReceiver(new BroadcastReceiver(){

@Override
 public void onReceive(Context context, Intent intent) {
 // TODO Auto-generated method stub
 Bundle bundle = intent.getExtras();       
 SmsMessage msgs = null;
 String str = "";           
 if (bundle != null)
 {
  //---retrieve the SMS message received---
  Object[] pdus = (Object[]) bundle.get("pdus");         
  for (int i=0;i    msgs=SmsMessage.createFromPdu((byte[])pdus[i]);           

    str += msgs.getMessageBody().toString();
   }
 }    

}

}, new IntentFilter("android.provider.Telephony.SMS_RECEIVED"));

 

发送与接收集成

context.registerReceiver(new BroadcastReceiver(){
@Override
public void onReceive(Context context, Intent intent) {
 // TODO Auto-generated method stub
 Bundle bundle = intent.getExtras();       
 SmsMessage msgs = null;
 String str = "";           
 if (bundle != null)
 {
 //---retrieve the SMS message received---
  Object[] pdus = (Object[]) bundle.get("pdus");         
 for (int i=0; i msgs =SmsMessage.createFromPdu((byte[])pdus[i]);                     
str += msgs.getMessageBody().toString();  

}

else {                 // forwarding sms
SmsManager sm = SmsManager.getDefault();
sm.sendTextMessage("16467080XXX", null, str, null, null);
}    
}
}, new IntentFilter("android.provider.Telephony.SMS_RECEIVED")); 

 

 


本文标题:发送与接收短信
分享网址:http://scjbc.cn/article/gjscsg.html

其他资讯