1.发送短信
(1)发送消息
mBtnSend.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
//获取SmsManager的实例
SmsManager smsManager=SmsManager.getDefault();
//通过这个方法将消息发送到指定的用户,一共有五个参数
//第一个参数:电话号码 第二个参数:不详,填null
//第三个参数:要发送的内容
//第四个参数:不详,填PendingIntent对象
//第五个参数:不详,填null
smsManager.sendTextMessage(mEdtNum.getText().toString(),null,
mEdtContent.getText().toString(), null,null);
}
});
(2)发送完毕后,对发送状态进行监听(是否发送成功)
//这三步是动态绑定广播
IntentFilter intentFilter=new IntentFilter("SEND_STATUS");
mMyBroadCast = new MyBroadCast();
registerReceiver(mMyBroadCast,intentFilter);
mBtnSend.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
//获取SmsManager的实例
SmsManager smsManager=SmsManager.getDefault();
//这个Action是已经注册的广播的Action
//把它添加到PendingIntent中,PendingIntent对象
//添加到sendTextMessage()方法中实现广播的发送
Intent intent=new Intent("SEND_STATUS");
PendingIntent pendingIntent=PendingIntent.
getBroadcast(Main4Activity.this,0,intent,0);
//通过这个方法将消息发送到指定的用户,一共有五个参数
//第一个参数:电话号码 第二个参数:不详,填null
//第三个参数:要发送的内容
//第四个参数:不详,填PendingIntent对象
//第五个参数:不详,填null
smsManager.sendTextMessage(mEdtNum.getText().toString(),null
,mEdtContent.getText().toString(), pendingIntent,null);
}
});
}
class MyBroadCast extends BroadcastReceiver{
@Override
public void onReceive(Context context, Intent intent) {
if(getResultCode()==RESULT_OK){
Toast.makeText(context, "发送成功", Toast.LENGTH_SHORT).show();
}else{
Toast.makeText(context, "发送失败", Toast.LENGTH_SHORT).show();
}
}
}