黑马程序员技术交流社区
标题:
安卓之短信发送
[打印本页]
作者:
mengxiang1993
时间:
2015-3-11 22:35
标题:
安卓之短信发送
package com.example.message;
import java.util.ArrayList;
import android.support.v7.app.ActionBarActivity;
import android.support.v7.app.ActionBar;
import android.support.v4.app.Fragment;
import android.telephony.SmsManager;
import android.text.TextUtils;
import android.util.Log;
import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.view.View.OnClickListener;
import android.view.ViewGroup;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;
import android.os.Build;
/**
* 需求:短信发送
* 步骤:
* 1.通过getText().toString().trim()方法获取文本框内容
* 2.通过SmsManager.getDefault()方法获取SmsManager对象
* 3.通过SmsManager.sendTextMessage方法发送短信
* 4.添加发送短信的权限
* 5.打电话,就是发送信息到端口。模拟器的端口左上角数字如:5556,就是他的端口
* 6.吐司要显示必须show();
* 7.当发送信息的内容长度超过70字就会崩溃,所以要分解信息发送。通过
* SmsManger.divideMessage(content);返回ArrayList<String>
* 然后通过for循环遍历发送
*/
public class MainActivity extends ActionBarActivity {
private EditText et_input_number;
private EditText et_input_content;
private Button btn_send;
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.fragment_main);
findView();
btn_send.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
//得到号码和发送内容
String number=et_input_number.getText().toString().trim();
String content=et_input_content.getText().toString().trim();
Log.i("number:", number);
Log.i("content:", content);
//判断是否为空
if(TextUtils.isEmpty(number)||TextUtils.isEmpty(content)){
Toast.makeText(MainActivity.this, "号码和发送内容不能为空", 0).show();;
return;
}else{
//得到发送短信的对象SmsManger
SmsManager message=SmsManager.getDefault();
//返回一个存放字符串的ArrayList对象
ArrayList<String> list=message.divideMessage(content);
//遍历集合发送
for(String s:list){
message.sendTextMessage(number, null, s, null, null);
}
}
}
});
}
/*
* 帮动控件
*/
public void findView(){
et_input_number=(EditText) findViewById(R.id.et_input_number);
et_input_content=(EditText) findViewById(R.id.et_input_content);
btn_send=(Button) findViewById(R.id.btn_send);
}
}
复制代码
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2