android 发送短信:
其中Mseeage表示要发送的信息,phoneNumber表示要发送的对象手机号码,这个只是管发送出去,不管是否发送成功。
<span style="white-space:pre"> </span>public void Send_SMS(String Message, String phoneNumber){
SmsManager sms = SmsManager.getDefault();
PendingIntent pi = PendingIntent.getActivity(this, 0, new Intent(this, SendSMS.class), 0);
if(Message.length() > 70)
{
ArrayList<String> msgs = sms.divideMessage(Message);
for(String msg : msgs)
{
sms.sendTextMessage(phoneNumber,null,msg,pi,null);
}
} else{
sms.sendTextMessage(phoneNumber, null, Message, pi, null);
}
//Toast.makeText(SendSMS.this, "短信发送完毕", Toast.LENGTH_LONG).show();
}
android 接受短信:
注释说的很清楚,就不再赘述了。
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.os.Bundle;
import android.telephony.SmsMessage;
import android.widget.Toast;
public class SMSReceiver extends BroadcastReceiver
{
/*当收到短信时,就会触发此方法*/
public void onReceive(Context context, Intent intent)
{
Bundle bundle = intent.getExtras();
Object messages[] = (Object[]) bundle.get("pdus");
SmsMessage smsMessage[] = new SmsMessage[messages.length];
for (int n = 0; n < messages.length; n++)
{
smsMessage[n] = SmsMessage.createFromPdu((byte[]) messages[n]);
}
//产生一个Toast
Toast toast = Toast.makeText(context, "短信内容: " + smsMessage[0].getMessageBody(), Toast.LENGTH_LONG);
//设置toast显示的位置
//toast.setGravity(Gravity.TOP|Gravity.LEFT, 0, 200);
//显示该Toast
toast.show();
}
}