先看看效果图:
布局文件:
activity_main.xml
Java代码:
package com.bzu.gxs;
import java.util.ArrayList;
import android.os.Bundle;
import android.app.Activity;
import android.telephony.SmsManager;
import android.text.TextUtils;
import android.view.Menu;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;
public class MainActivity extends Activity implements OnClickListener {
private EditText et_number;
private EditText et_content;
private Button btn_send;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
et_number = (EditText) findViewById(R.id.editText1);
et_cOntent= (EditText) findViewById(R.id.editText2);
btn_send = (Button) findViewById(R.id.btn_send);
btn_send.setOnClickListener(this);
}
@Override
public void onClick(View v) {
switch (v.getId()) {
case R.id.btn_send:
// 获取手机号码
String number = et_number.getText().toString().trim();
// 获取短信内容
String cOntent= et_content.getText().toString().trim();
// 判断手机和短信的内容是否为空
if (TextUtils.isEmpty(content) || TextUtils.isEmpty(number)) {
Toast.makeText(MainActivity.this, "手机号 或 短信内容 为空 ...",
Toast.LENGTH_LONG).show();
return;
} else {
SmsManager smsManger = SmsManager.getDefault();
// 把短信拆分成多个片段,防止短信内容过长,发送失败
ArrayList cOntents= smsManger.divideMessage(content);
// 遍历短信内容
for (String str : contents) {
/*
* smsManger.sendTextMessage(destinationAddress, scAddress, text, sentIntent, deliveryIntent)
* sendTextMessage方法的
* 第一个参数是信息的接收者
* 第二个参数是短信来自于哪里,目前不支持填写null就可以
* 第三个参数短信发送的内容
* 第四个参数是判断短信是否发送成功
* 第五个参数是对面接收到你发的短信的一个消息报告
*/
smsManger
.sendTextMessage(number, null, content, null, null);
Toast.makeText(MainActivity.this, "发送成功...",
Toast.LENGTH_LONG).show();
}
}
break;
}
}
}
以上就是Android短信发送器的实现代码,希望能给大家一个参考,也希望大家多多支持。