android-基础知识:smsManager.sendTextMessage() 发送短信息
2011-11-09 22:01
633 查看
利用类 SmsManager 发送信息, smsManager 为 SmsManager 一个默认的实例. SmsManager smsManager = SmsManager.getDefault();
smsManager.sendTextMessage(destinationAddress, scAddress, text, sentIntent, deliveryIntent)
destinationAddress: 收件人号码
scAddress: 短信中心服务号码, 这里设置为null
text: 发送内容
sentIntent: 发送短信结果状态信号(是否成功发送),new 一个Intent , 操作系统接收到信号后将广播这个Intent.此过程为异步.
deliveryIntent: 对方接收状态信号(是否已成功接收).
由于需要用到系统发送信息功能, 要在AndroidMainfest.xml 加入 <uses-permission android: name="android.permisson.SEND_SMS" />
PhoneSMSActivity.java
smsManager.sendTextMessage(destinationAddress, scAddress, text, sentIntent, deliveryIntent)
destinationAddress: 收件人号码
scAddress: 短信中心服务号码, 这里设置为null
text: 发送内容
sentIntent: 发送短信结果状态信号(是否成功发送),new 一个Intent , 操作系统接收到信号后将广播这个Intent.此过程为异步.
deliveryIntent: 对方接收状态信号(是否已成功接收).
由于需要用到系统发送信息功能, 要在AndroidMainfest.xml 加入 <uses-permission android: name="android.permisson.SEND_SMS" />
PhoneSMSActivity.java
package com.PhoneSMS.melody; import java.util.List; import android.app.Activity; 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 PhoneSMSActivity extends Activity implements OnClickListener { private EditText edtSMSTo = null; // 收件人控件 private EditText edtContent = null; // 发送内容控件 private Button btnSent = null; // 发送btn 控件 private String SMSTo = null; // 收件人号码 private String SMSContent = null; // 发送内容 /** Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); /** * 获取控件 */ edtSMSTo = (EditText) this.findViewById(R.id.edtSMSTo); edtContent = (EditText) this.findViewById(R.id.edtContent); btnSent = (Button) this.findViewById(R.id.btnSent); // 获取收件人号码 SMSTo = edtSMSTo.getText().toString(); // 获取发送内容 SMSContent = edtContent.getText().toString(); // 设置监听事件 btnSent.setOnClickListener(this); } @Override public void onClick(View v) { switch (v.getId()) { case R.id.btnSent: /** * 实现短信发送功能 */ // 获取默认短信管理对象 SmsManager smsManager = SmsManager.getDefault(); // 判断发送内容字数(一件信息最多70 字) if(SMSContent.length() <= 70) { smsManager.sendTextMessage(SMSTo, null, SMSContent, null, null); }else{ // SmsManger 类中 divideMessage 会将信息按每70 字分割 List<String> smsDivs = smsManager.divideMessage(SMSContent); for(String sms : smsDivs) { smsManager.sendTextMessage(SMSTo, null, sms, null, null); } } Toast.makeText(PhoneSMSActivity.this, "信息已发送", Toast.LENGTH_SHORT); break; } } }
相关文章推荐
- smsManager.sendTextMessage() 发送短信息
- android.telephony.SmsManager.sendMultipartTextMessage
- android sendTextMessage每发送一条短信都弹权限提示
- SmsManager#sendTextMessage的BUG
- iOS基础知识之——怎样能直接发送短信而不调出发送短信的send界面
- [Android 基础知识] 之十二: 广播的两种发送方式
- Android 基础知识 Message MessageQueue Handler Looper 关系 图示
- android基础知识02——线程安全2:handler、message、runnable
- java.lang.SecurityException: Sending SMS message: uid 10047 does not have android.permission.SEND_SM
- 【Android基础知识】Handler、Message、Looper的关系
- android学习中关于Textview,Button,EditText,连接的设置,Intent,Activity不同状态等的一系列基础知识点
- android LocationManager的简单使用(获取经纬度信息到textview显示)
- How To Send SMS Text Message in iPhone Apps
- Android基础知识【项目实训-登录与个人信息及样式背景】【7】
- [android基础知识] 之四:TelephonyManager service的使用实例
- android基础知识学习(1) TextView属性大全+单行显示长文本
- Java基础知识强化之网络编程笔记21:Android网络通信之 Android常用OAuth登录(获取令牌信息)
- Android基础教程之----SMS简单发送短信程序(两个模拟器之间的通信)!
- Java基础知识强化之网络编程笔记22:Android网络通信之 Android常用OAuth登录(获取个人信息)
- Android基础知识之控件系列(1)——TextView及自定义动态TextView