一、准备字符资源

         <string name="tip_phone">请输入电话号码</string>

         <string name="tip_sms">请输入发送信息</string>

         <string name="tip_send">发送</string>

二、页面布局

 

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"

    xmlns:tools="http://schemas.android.com/tools"

    android:layout_width="match_parent"

    android:layout_height="match_parent"

    tools:context="${relativePackage}.${activityClass}" >

    <TextView

        android:id="@+id/tvphone"

        android:layout_width="match_parent"

        android:layout_height="wrap_content"

        android:text="@string/tip_phone" />

    <EditText

        android:id="@+id/etphone"

        android:layout_width="match_parent"

        android:layout_height="wrap_content"

        android:layout_below="@+id/tvphone"

        android:inputType="phone"/>

    <TextView

        android:id="@+id/tvsms"

        android:layout_width="match_parent"

        android:layout_height="wrap_content"

         android:layout_below="@+id/etphone"

        android:text="@string/tip_sms" />

    <EditText

        android:id="@+id/etsms"

        android:layout_width="match_parent"

        android:layout_height="100dp"

        android:layout_below="@+id/tvsms"

        android:inputType="textMultiLine"/><!—短信内容换行-->

    <Button

                   android:id="@+id/sendBtn"

        android:layout_width="wrap_content"

        android:layout_height="wrap_content"

        android:layout_below="@+id/etsms"

        android:onClick="sendSms"

        android:text="@string/tip_send"/>

</RelativeLayout>

三、具体实现代码

 

public class SmsActivity extends Activity {

         private EditText etphone,etsms;

    @Override

    protected void onCreate(Bundle savedInstanceState) {

        super.onCreate(savedInstanceState);

        setContentView(R.layout.activity_sms);

        //获取电话号码的控件对象

        etphone=(EditText) findViewById(R.id.etphone);

        //获取发送信息的控件对象

        etsms=(EditText) findViewById(R.id.etsms);

    }

    public void sendSms(View v) {

                   switch (v.getId()) {

                   case R.id.sendBtn:

                            String phone=etphone.getText().toString();

                            String content=etsms.getText().toString();

                            //2.发短信的管理器对象

                            SmsManager smsManager=SmsManager.getDefault();

                            //3.拆分短信内容

                            List<String> list=smsManager.divideMessage(content);

                            //4.遍历发送信息

                            for(String sms:list){

                                     //5.逐条发送信息 

                                     smsManager.sendTextMessage(phone, null, sms, null, null);

                            }

                            //6.提示短信发送成功

                            Toast.makeText(this, "发送成功", Toast.LENGTH_LONG).show();

                            break;

                   default:

                            break;

                   }

         }

}

 

四、获取权限

在AndroidManifest.xml中添加发短信的权限

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

         最终效果如下: