搞了这么就的android了,打电话,发短信,发邮件这些接口都没有弄过,惭愧啊,所以今天看了发短信的程序:

原文连接:

http://blog.csdn.net/wenlin56/archive/2010/12/13/6074206.aspx

http://blog.csdn.net/xjanker2/archive/2010/12/13/6074344.aspx

布局文件:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
>
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="@string/accepter"
/>
<EditText android:id="@+id/number"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:numeric="integer"
/>
<TextView android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="@string/content"
/>
<EditText android:id="@+id/content"
android:layout_width="fill_parent"
android:layout_height="80dip"
/>
<Button android:id="@+id/send"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="@string/send"/>
</LinearLayout>

程序:

package cn.edu.wtu;

import java.util.List;

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 SMS extends Activity implements OnClickListener{
/** Called when the activity is first created. */
//declare
private EditText mContentText;
private EditText mNumberText;
private Button mBtn;
private String mNumber;
private String mContent;

@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
// init
mNumberText = (EditText) findViewById(R.id.number);
mContentText = (EditText) findViewById(R.id.content);
mBtn = (Button) findViewById(R.id.send);

// bind listener
mBtn.setOnClickListener(this);
}

@Override
public void onClick(View v) {
// TODO Auto-generated method stub
if(v.getId()==mBtn.getId()){
mNumber = mNumberText.getText().toString();
mContent = mContentText.getText().toString();
PendingIntent pi = PendingIntent.getBroadcast(this, 0, new Intent(), 0);
//android 2.0之前SmsManager 在android.telephone.gsm这个包中,2.0以后在android.telephone这个包中
SmsManager smsManager = SmsManager.getDefault();
//安照一条短信的最大容量来拆分成多条短信
List<String> texts = smsManager.divideMessage(mContent);
for (String text : texts) {
smsManager.sendTextMessage(mNumber, null, text, pi, null);

}
Toast.makeText(this, R.string.ok, Toast.LENGTH_LONG).show();
}
}
}

短信管理器 : SmsManager

1. 在 Android 2.0 以前 应该使用 android.telephony.gsm.SmsManager

之后应该用 android.telephony.SmsManager;

注意是在Application标签之外。

3. 获取系统默认的短信管理器 SmsManager smsManager = SmsManager.getDefault(); 4. 按照每条短信最大字数来拆分短信 List<String> divideContents = smsManager.divideMessage(content); 5. 发送短信 smsManager.sendTextMessage(destinationAddress, scAddress, text, sentIntent, deliveryIntent) -- destinationAddress :目标电话号码 -- scAddress :短信中心号码,测试可以不填 -- text: 短信内容 -- sentIntent :发送 --> 中国移动 --> 中国移动发送失败 --> 返回发送成功或失败信号 --> 后续处理 即,这个意图包装了短信发送状态的信息 -- deliveryIntent 发送 --> 中国移动 --> 中国移动发送成功 --> 返回对方是否收到这个信息 --> 后续处理 即:这个意图包装了短信是否被对方收到的状态信息(供应商已经发送成功,但是对方没有收到)。 6.声明短信发送权限 * AndroidManifest.xml <uses-permission android:name="android.permission.SEND_SMS"/>

更多相关文章

  1. 调用Android短信软件进行短信群发
  2. android实现打电话和发短信的功能(10学员张晓丛)
  3. BroadcastReceive介绍
  4. Android通讯录管理(获取联系人、通话记录、短信消息)(二)
  5. Android(安卓)app接收来自adb发送的广播的实例学习
  6. Android之修改短信程序
  7. Android的跨进程通信
  8. Android监听收到的短信
  9. android实现短信监听

随机推荐

  1. 跨境电商,如何做好短视频营销?
  2. 微信小程序左右导航联动加顶部
  3. PHP基础 -(五)include,require,类,访问限制
  4. 演示单文件上传与多文件上传、演示简单分
  5. php:1. 实例演示属性与方法重载 2. 实例
  6. 单文件与多文件上传,分页操作
  7. Html基础
  8. 最新的 k8s v1.23.5安装
  9. Android活动Acitivity启动模式之singleTa
  10. android之Activity