SmsManager是Android提供的一个非常常见的服务,SmsManager提供了一系列sendXxxMessage()方法用于发送短信,不过短信通常都是普通文本,调用sendTextMessage()即可。群发短信的实现也十分简单,只要让程序遍历每个收件人号码并依此发送短信即可。下面用一个简单实例来演示:

package com.guyun.sendsms;import java.util.ArrayList;import android.app.Activity;import android.app.PendingIntent;import android.content.Intent;import android.os.Bundle;import android.telephony.SmsManager;import android.view.View;import android.view.View.OnClickListener;import android.widget.Button;import android.widget.EditText;import android.widget.Toast;public class SendSmsActivity extends Activity {private EditText content;private Button sendBtn;// 记录需要群发的号码列表private ArrayList<String> sendList = new ArrayList<String>();// 声明短信管理器SmsManager对象private SmsManager sManage;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.main);content = (EditText) findViewById(R.id.main_content);sendBtn = (Button) findViewById(R.id.main_btn_send);// 获取系统SmsManager服务sManage = SmsManager.getDefault();initSendList();sendBtn.setOnClickListener(new OnClickListener() {@Overridepublic void onClick(View v) {String contentStr = content.getText().toString();for (int i = 0; i < sendList.size(); i++) {String number = sendList.get(i);// 创建一个PendingIntent对象PendingIntent pi = PendingIntent.getActivity(SendSmsActivity.this, 0, new Intent(), 0);// 发送短信sManage.sendTextMessage(number, null, contentStr, pi, null);}// 提示短息群发完成Toast.makeText(SendSmsActivity.this, "短信群发完成!",Toast.LENGTH_LONG).show();}});}/** * 初始化群发名单的集合 */private void initSendList() {sendList.add("15680768383");sendList.add("15680768384");sendList.add("15680768385");sendList.add("15680768386");sendList.add("15680768387");sendList.add("15680768387");}}

加上权限:

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

注意:在本文中,只是简单地手动初始化群发名单,此示例可以做如下改进:

1、群发名单应从系统联系人中选取,即需要读取系统联系人,并显示在一个ListView中提供复选框供用户选择。
2、选择后的群发名单再放入上面集合中。

更多相关文章

  1. 笔记-系统源码常用的Content Provider
  2. 为什么每个Android开发者都应该使用Anko
  3. Android(安卓)Netd介绍
  4. Android(安卓)源码
  5. android TextView 图文混排
  6. 安卓学习第三天
  7. android:查询数据库 指定列 指定列名 并输出查询结果(如查询电话
  8. Android(安卓)kotlin网络请求框架fuel(简单方便的使用,提供项目中
  9. Android官方提供的支持不同屏幕大小的全部方法

随机推荐

  1. Android学习系列Toolbar,AppBarLayout,Coor
  2. php的初步认识
  3. Android(安卓)Activity上下滑动切换背景
  4. Android用户定位(二)
  5. android实现数据库和UI同步更新
  6. 好的文章推荐
  7. Android(安卓)— 手撸代码学习事件分发的
  8. android+eclipse+phonegap1.7(cordova)配
  9. android学习日记:拨号按键声音自定义
  10. Android(安卓)ItemTouchHelper实现Recycl