anroid发送短信接口
2011-04-19 20:07
375 查看
搞了这么就的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"/>
原文连接:
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"/>
相关文章推荐
- 短信发送接口被恶意访问的网络攻击事件(三)定位恶意IP的日志分析脚本
- php手机短信接口发送验证码
- php调用云片网接口发送短信实例
- 短信发送:webservice调用第三方接口发送短信
- 装饰者模式的学习(c#) EF SaveChanges() 报错(转载) C# 四舍五入 保留两位小数(转载) DataGridView样式生成器使用说明 MSSQL如何将查询结果拼接成字符串 快递查询 C# 通过smtp直接发送邮件 C# 带参访问接口,WebClient方式 C# 发送手机短信 文件 日志 写入 与读取
- 短信发送接口被恶意访问的网络攻击事件(四)完结篇--搭建WAF清理战场
- 调接口发送短信 :用file_get_contents函数,以post方式获取url
- android 中调用接口发送短信
- android 中调用接口发送短信
- 前端验证码倒计时、后台发送验证码、创蓝短信接口
- ios 调用短信接口发送指定内容的消息
- pyhthon 利用爬虫结合阿里大于短信接口实现短信发送天气预报
- 27-JAVA利用飞信接口发送短信
- 如何调用外部webservice 接口来发送短信
- 集成阿里大于发送短信接口
- 调用短信接口发送验证码,并对验证码进行验证
- 关于c#短信发送接口使用说明
- iOS 调用短信接口发送指定内容的消息
- .NET 微信开放平台接口(接收短信、发送短信)
- 内网调用服务器接口发送短信(emay)