Android 发送短信

发送短信主要就是两个步骤

一、获取手机号码和短信内容

二、将短信内容进行分割(分成多条).调用android SmsManager


主要代码如下:

public class MainActivity extends Activity {
    /** Called when the activity is first created. */
	private EditText phoneNumber;//获取手机号码
	private EditText smsContent;//获取短信内容
	
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        
        phoneNumber= (EditText)this.findViewById(R.id.phoneNumber);
        smsContent= (EditText)this.findViewById(R.id.smsContent);
        
        Button sendButton=(Button)this.findViewById(R.id.sendButton);
        sendButton.setOnClickListener(new SendMsmButtonClick());             
    }
    
    ///发送短信事件   
    private final class SendMsmButtonClick implements View.OnClickListener{

		public void onClick(View v) {
			// TODO Auto-generated method stub
			String number=phoneNumber.getText().toString();
			String content=smsContent.getText().toString();
			
			SmsManager manager=SmsManager.getDefault();
			ArrayList<String> smsList= manager.divideMessage(content);//短信内容(将短信内容进行分割)
			
			for(String smsString : smsList)
			{
				//sendTextMessage的参数:发送短信地址,短信的类型,短信的内容,发送短信的状态,接受者的状态
				manager.sendTextMessage(number, null, smsString, null, null);					
			}
			//Android显示框:上下文类,显示的提示信息,显示时间(LENGTH_SHORT or LENGTH_LONG)
			Toast.makeText(MainActivity.this, R.string.send_Seccuss,Toast.LENGTH_SHORT).show();			
		}
    	
    }
}


注意:无论是发送短信还是拨打电话,都是涉及安全,因此需要在项目文件中AndroidManifest.xml添加对应的权限

       发送短信的权限是 : <uses-permission android:name="android.permission.SEND_SMS"/>

这是一个自己开发的Android 直接发送短信方法附上代码,Android短信功能,包括了对内容合法性的验证,发送完成弹出提示。自己开发的直接发送短信的方法:   private void sendSMS(String telNo,String smsStr,View v){    PendingIntent pi=    PendingIntent.getActivity(this, 0, new Intent(this,Sample_11_1.class), 0);    SmsManager sms=SmsManager.getDefault();    sms.sendTextMessage(telNo, null, smsStr, pi, null);    //短信发送成功给予提示    Toast.makeText(    Sample_11_1.this, //上下文    "恭喜你,短信发送成功!", //提示内容    5000 //信息显示时间    ).show();    v.setEnabled(true);//短信发送完成后恢复发送按钮的可用状态   }   对手机号码和短信内容的验证部分:   //获取输入的电话号码   EditText etTel=(EditText)findViewById(R.id.EditText02);   String telStr=etTel.getText().toString();   //获取输入的短信内容   EditText etSms=(EditText)findViewById(R.id.EditText01);   String smsStr=etSms.getText().toString();   //判断号码字符串是否合法   if(PhoneNumberUtils.isGlobalPhoneNumber(telStr)){//合法则发送短信    v.setEnabled(false);//短信发送完成前将发送按钮设置为不可用    sendSMS(telStr,smsStr,v);   }   else{//不合法则提示    Toast.makeText(    Sample_11_1.this, //上下文    "电话号码不符合格式!!!", //提示内容    5000//信息显示时间    ).show();   }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值