android 调用短信,android中可以通过两种方式调用接口发送短信
第一:调用系统短信接口直接发送短信;主要代码如下:
//直接调用短信接口发短信
SmsManager smsManager = SmsManager.getDefault();
List divideContents = smsManager.divideMessage(content);
for (String text : divideContents) {
smsManager.sendTextMessage("150xxxxxxxx", null, text, sentPI, deliverPI);
}
第二:调起系统发短信功能;主要代码如下:
Uri uri = Uri.parse("smsto:10010");
Intent it = new Intent(Intent.ACTION_SENDTO, uri);
it.putExtra("sms_body", "102");
activity.startActivity(it);
这里主要讲解第一种方法,其中大部分信息来源于互联网:
获取短信管理器
SmsManager smsManager = SmsManager.getDefault();
拆分短信内容(手机短信长度限制)
List divideContents = smsManager.divideMessage(content);
发送拆分后的内容
List divideContents = smsManager.divideMessage(content);
for (String text : divideContents) {
smsManager.sendTextMessage("150xxxxxxxx", null, text, sentPI, deliverPI);
}
处理返回的发送状态
String SENT_SMS_ACTION = "SENT_SMS_ACTION";
Intent sentIntent = new Intent(SENT_SMS_ACTION);
PendingIntent sentPI = PendingIntent.getBroadcast(context, 0, sentIntent,
0);
// register the Broadcast Receivers
context.registerReceiver(new BroadcastReceiver() {
@Override
public void onReceive(Context _context, Intent _intent) {
switch (getResultCode()) {
case Activity.RESULT_OK:
Toast.makeText(context,
"短信发送成功", Toast.LENGTH_SHORT)
.show();
break;
case SmsManager.RESULT_ERROR_GENERIC_FAILURE:
break;
case SmsManager.RESULT_ERROR_RADIO_OFF:
break;
case SmsManager.RESULT_ERROR_NULL_PDU:
break;
}
}
}, new IntentFilter(SENT_SMS_ACTION));
处理返回的接收状态
String DELIVERED_SMS_ACTION = "DELIVERED_SMS_ACTION";
// create the deilverIntent parameter
Intent deliverIntent = new Intent(DELIVERED_SMS_ACTION);
PendingIntent deliverPI = PendingIntent.getBroadcast(context, 0,
deliverIntent, 0);
context.registerReceiver(new BroadcastReceiver() {
@Override
public void onReceive(Context _context, Intent _intent) {
Toast.makeText(context,
"收信人已经成功接收", Toast.LENGTH_SHORT)
.show();
}
}, new IntentFilter(DELIVERED_SMS_ACTION));
发送短信的参数说明
smsManager.sendTextMessage(destinationAddress, scAddress, text, sentIntent, deliveryIntent)
-- destinationAddress:目标电话号码
-- scAddress:短信中心号码,测试可以不填
-- text: 短信内容
-- sentIntent:发送 -->中国移动 --> 中国移动发送失败 --> 返回发送成功或失败信号 --> 后续处理 即,这个意图包装了短信发送状态的信息
-- deliveryIntent: 发送 -->中国移动 --> 中国移动发送成功 --> 返回对方是否收到这个信息 --> 后续处理 即:这个意图包装了短信是否被对方收到的状态信息(供应商已经发送成功,但是对方没有收到)。
android 调用短信,android中可以通过两种方式调用接口发送短信相关推荐
- android不调用系统发送短信,android之两种方式调用短信发送接口
释放双眼,带上耳机,听听看~! 相信很多程序员在开发程序的时候都会遇到短信调用端口的情况,今天是技术狗小编为大家带来的关于android之两种方式调用短信发送接口,希望对你学习这方面知识有帮助! an ...
- Android中保存图片的两种方式
Android中保存图片的两种方式 第一种是保存到数据库: 1.保存到数据库: 2.从数据库读取: 二是以图片格式保存到本地 1. A.声明tempFile以保存到指定路径: B.保存到tempFil ...
- ETH:Windows搭建ETH(区块链技术)利用Web端和小程序端两种方式调用ETH上的SC智能合约
ETH:Windows搭建ETH(区块链技术)利用Web端和小程序端两种方式调用ETH上的SC智能合约 目录 1.Geth安装.配置文件.与ETH节点交互 1.1.下载并安装好geth客户端 1.2. ...
- [js] axios为什么可以使用对象和函数两种方式调用?是如何实现的?
[js] axios为什么可以使用对象和函数两种方式调用?是如何实现的? axios 源码 初始化 看源码第一步,先看package.json.一般都会申明 main 主入口文件. // packag ...
- linux耳机插拔检测,Android应用开发之耳机插拔处理两种方式
本文将带你了解Android应用开发[RK3288][Android6.0] 耳机插拔处理两种方式,希望本文对大家学Android有所帮助. [RK3288][Android6.0] 耳机插拔处理 ...
- android获取ip方法,Android开发准确获取手机IP地址的两种方式
最近看了好多网上获取IP地址的例子,发现好多都不完全准确,这里我写一下获取ip地址的两种方式. 比如微信支付,后台在做接口的时候,要求App端传入IP地址,我们需要判断是网络环境,WI-FI还是3G, ...
- Android之从网络上获取图片的两种方式讲解:thread+handle和AsyncTask方式
从网络上获取图片是一个比较耗时的操作,放在主线程会导致阻塞主线程,响应超时,所以我们不能把它放在主线程里操作,必须放在一个子线程里,我打算采用两种方式去实现.1.采用thread去获取图片,获取到后通 ...
- android recocery模式,小米进入Recovery模式的两种方式
刷机分为卡刷和线刷,卡刷的话必须得进入recovery模式,其中需要运用到某些按键的组合,刷机帮小编特意整理了小米进入recovery模式的方法,各位可以参考下: 小米如何进入Recovery的两种方 ...
- java声明异常必须抛出吗_简述java中抛出异常的两种方式
java编程中经常遇到异常,这时就需要利用java中的异常抛出机制,在java中提供了两种抛出异常的方法:try{} catch() {}和throw. 一.抛出异常的两种方式 (1) 首先我们来看 ...
最新文章
- git如何移除某文件的版本控制
- mac sublime html开发环境,在Mac下用Sublime Text 2 架设C开发环境
- java int数列转字符串,鍥剧墖杞瓧绗︿覆
- python怎么自动生成测试报告_python生成接口自动化测试报告模版
- Condition中的transferForSignal()方法的不解
- php键值交换,php键值互换时走的一个弯路
- 服务器imm口加载硬盘,ibm x3250 M4如何进IMM(远程管理口)
- 解决jQuery聚焦时光标在input最前面的问题
- pmos导通条件 图示_如何判断NMOS管和PMOS管
- 美团暑期实习前端面试
- [恢]hdu 2003
- 攻击性Web测试框架(OWTF)是OWASP + PTES的重点,旨在联合优秀的工具使渗透测试更加高效,主要由Python编写
- linux 安装pureftp
- 三角函数之和差化积/积化和差/倍角公式(汇总)
- UVA 487 - Boggle Blitz
- 2019年秋季学期实验室安全考试1
- Linux常用命令大全,一篇搞定
- Cynthia代码审计
- 当贝塞尔同学遇见麻衣学姐
- 投出去的简历石沉大海,1个月只有2个面试邀约,这正常吗?
热门文章
- OA系统--用户登录
- 电脑键盘各键名称及功能是什么
- VideoReader Failed to init Ubuntu 18.04
- python语言的注释语句引导符不包括什么_以下选项中,哪一个是Python语言中代码注释使用的符号?________...
- Android Studio设计APP实现与51单片机通过WIFI模块(ESP8266-01S)通讯控制LED灯亮灭的设计源码【详解】
- 姓名拼音首字母缩写_公司首字母缩写
- 不干正事儿系列文章1:Sonic Pi简单应用
- VS2015安装失败
- PMP第三章:项目经理的角色
- 计算机1为什么代表高电平,高电平为什么表示1,低电平为什么表示0?