您的位置:首页 > 移动开发 > Android开发

android 发送短信和接受短信模块

2014-08-22 09:33 330 查看
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
 = SmsMessage.createFromPdu((byte[]) messages
);
		}
		//产生一个Toast
		Toast toast = Toast.makeText(context, "短信内容: " + smsMessage[0].getMessageBody(), Toast.LENGTH_LONG);
		//设置toast显示的位置
		//toast.setGravity(Gravity.TOP|Gravity.LEFT, 0, 200);
		//显示该Toast
		toast.show();
	}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: