首先做好布局,然后在“发送”做点击事件,如下所示:

StringphoneNumber=editPhone.getText().toString().trim();Stringmessage=editMessage.getText().toString().trim();sendSMS(phoneNumber,message);privatevoidsendSMS(StringphoneNumber,Stringmessage){StringSENT_SMS_ACTION="SENT_SMS_ACTION";StringDELIVERED_SMS_ACTION="DELIVERED_SMS_ACTION";sendIntent=newIntent(SENT_SMS_ACTION);deliverIntent=newIntent(DELIVERED_SMS_ACTION);//返回发送的状态sentPI=PendingIntent.getBroadcast(this,0,sendIntent,0);this.registerReceiver(newBroadcastReceiver(){@OverridepublicvoidonReceive(Context_context,Intent_intent){switch(getResultCode()){caseActivity.RESULT_OK:Toast.makeText(MainActivity.this,"短信发送成功",Toast.LENGTH_SHORT).show();editPhone.setText("");editMessage.setText("");break;caseSmsManager.RESULT_ERROR_GENERIC_FAILURE:break;caseSmsManager.RESULT_ERROR_RADIO_OFF:break;caseSmsManager.RESULT_ERROR_NULL_PDU:break;}}},newIntentFilter(SENT_SMS_ACTION));//返回接收的状态deliverPI=PendingIntent.getBroadcast(this,0,deliverIntent,0);this.registerReceiver(newBroadcastReceiver(){@OverridepublicvoidonReceive(Context_context,Intent_intent){Toast.makeText(MainActivity.this,"收信人已经成功接收",Toast.LENGTH_SHORT).show();}},newIntentFilter(DELIVERED_SMS_ACTION));//发送短信SmsManagersmsManager=SmsManager.getDefault();ArrayList<String>divideMessage=smsManager.divideMessage(message);for(Stringtext:divideMessage){smsManager.sendTextMessage(phoneNumber,null,text,sentPI,deliverPI);}}

这样就好了,最后不要忘记了在清单文件中配置短信的权限

<uses-permissionandroid:name="android.permission.SEND_SMS"/>