02发送短信

使用SmsManager发送短信

java.lang.Object
   ↳android.telephony.SmsManager

Manages SMS operations such as sending data, text, and pdu SMS messages. Get this object by calling the static method SmsManager.getDefault().
管理短信操作,如发送数据,文本和PDU短信。通过调用静态方法SmsManager.getDefault() 获取此对象。

使用到的API:
1、public void sendTextMessage(String destinationAddress, String scAddress, String text, PendingIntent sentIntent, PendingIntent deliveryIntent)
Parameters
destinationAddressthe address to send the message to   
消息的目标地址,短信的接收方
scAddressis the service center address or null to use the current default SMSC 
短信服务中心的地址,or 为空使用当前默认的 SMSC,一般用null
textthe body of the message to send
短信内容
sentIntentif not NULL this PendingIntent is broadcast when the message is successfully sent, or failed. The result code will beActivity.RESULT_OK for success, or one of these errors:
RESULT_ERROR_GENERIC_FAILURE
RESULT_ERROR_RADIO_OFF
RESULT_ERROR_NULL_PDU
For RESULT_ERROR_GENERIC_FAILURE the sentIntent may include the extra "errorCode" containing a radio technology specific value, generally only useful for troubleshooting.
The per-application based SMS control checks sentIntent. If sentIntent is NULL the caller will be checked against all unknown applications, which cause smaller number of SMS to be sent in checking period.
不为null的话,则PendingIntent会发送广播:
Activity.RESULT_OK 成功
RESULT_ERROR_GENERIC_FAILURE 不确定的错误 
RESULT_ERROR_RADIO_OFF radio关闭
RESULT_ERROR_NULL_PDU PDU错误
deliveryIntentif not NULL this PendingIntent is broadcast when the message is delivered to the recipient. The raw pdu of the status report is in the extended data ("pdu").
如果不为空,当消息成功传送到接收者这个 PendingIntent 就广播。 
Throws
IllegalArgumentExceptionif destinationAddress or text are empty 

2、public ArrayList<String>divideMessage(String text)

Divide a message text into several fragments, none bigger than the maximum SMS message size.

3、不能忘记配置权限

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

*****************************
效果图:
打开两个虚拟机,输入虚拟机编号,输入短信内容,发送。



代码如下:

MainActivity.java
package com.example.sendMsg;import java.util.ArrayList;
import java.util.List;import android.app.Activity;
import android.os.Bundle;
import android.telephony.SmsManager;
import android.view.View;
import android.widget.EditText;public class MainActivity extends Activity {private EditText ed_phone;private EditText ed_content;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);ed_phone=(EditText) findViewById(R.id.et_phone);ed_content=(EditText) findViewById(R.id.et_content);}public void sendMessage(View v){String phoneNumber=ed_phone.getText().toString();String content=ed_content.getText().toString();//获取短信管理器SmsManager sm=SmsManager.getDefault();//切割短信,把长短信切割成多条短信List<String> msgList=new ArrayList<String>();msgList=sm.divideMessage(content);//发送短信for(String msg:msgList){sm.sendTextMessage(phoneNumber, null, msg, null, null);}}}


代码下载


本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/539983.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Java应用一般架构

原文链接&#xff1a;http://www.iteye.com/news/31115 当我们架设一个系统的时候通常需要考虑到如何与其他系统交互&#xff0c;所以我们首先需要知道各种系统之间是如何交互的&#xff0c;使用何种技术实现。 1. 不同系统不同语言之间的交互 现在我们常见的不同系统不同语…

Mac MongoDB未正常关闭导致重启失败

你可以删除掉mongod.lock文件&#xff0c;然后重新启动&#xff0c;如果还是不可以&#xff0c;你可以查看一下进程&#xff0c;然后杀掉&#xff1a; ps -aef | grep mongo sudo kill 1076 再重启数据库即可。

powerdns与nginx结合实现以域名和IP方式访问web服务器80端口时分别跳转到不同页面...

1.powerdns设置 2.内部网站介绍 web服务器采用nginx&#xff0c;内网dns采用powerdns. 想实现的功能如下 通过ip访问时跳转到A页面&#xff0c;通过域名访问时&#xff0c;让其跳转到B页面。两种方式的端口均为80. 页面A对应的nginx配置 server { listen 80; …

java代码块是对象吗_面向对象(Java中普通代码块,构造代码块,静态代码块区别及代码示例)...

//静态代码块:在java中使用static关键字声明的代码块。静态块用于初始化类&#xff0c;为类的属性初始化。每个静态代码块只会执行一次。由于JVM在加载类时会执行静态代码块&#xff0c;所以静态代码块先于主方法执行。//如果类中包含多个静态代码块&#xff0c;那么将按照&quo…

Android app 应用签名

为什么要签名&#xff1f; 这个要从Android的系统设计来解释。 ---Android系统中的每个应用都是一个用户&#xff0c;应用的包名&#xff08;清单文件中 package的值&#xff09;就是用户名。 当一个已安装的应用A和一个正要安装的应用B&#xff0c;它们的包名相同&#xff…

[.Net线程处理系列]专题五:线程同步——事件构造

引言&#xff1a; 其实这部分内容应该是属于专题四&#xff0c;因为这篇也是讲关于线程同步的&#xff0c;但是由于考虑到用户的阅读习惯问题&#xff0c;因为文章太长了&#xff0c;很多人不是很愿意看包括我也是这样的&#xff0c;同时也有和我说可以把代码弄成折叠的&#x…

闪屏页面(Splash)开发

业余作品--365安全卫士 ------------------------------------------- 闪屏页面(Splash)&#xff1a;app刚启动时的页面 作用&#xff1a; 1、展示公司品牌logo 2、应用初始化。如游戏app第一次启动初始化数据 3、检测新版本。 4、检测程序合法性。如 招商银行app在启动…

matlab2016b ubuntu命令行安装 + matconvnet的安装

0. 下载安装包 下载的文件有Matlab 2016b Linux64 Crack.rar&#xff0c;R2016b_glnxa64_dvd2.iso&#xff0c;R2016b_glnxa64_dvd1.iso。 1. 拷贝安装文件并上传服务器 在Windows下用虚拟光驱打开&#xff0c;并将R2016b_glnxa64_dvd1.iso和R2016b_glnxa64_dvd2.iso所有内容复…

java 责任链模式 链表_责任链模式的实现及源码中应用

01—责任链模式的实现假设一个出差任务的流程需要审批出差行程和出差报销金额。那么&#xff0c;对应两个部门的审核。我们先定义一个出差任务Task类&#xff1a;然后&#xff0c;我们定义一个抽象的处理类Handler&#xff0c;其中具体的处理方法Handle交给子类去实现。然后&am…

php setcookie 过期,php cookie怎么设置过期时间?

PHP中可以使用setcookie()函数设置cookie的过期时间。语法为“setcookie(name,value,expire,path,domain,secure)”&#xff1b;其中expire参数用于指定cookie的有效期&#xff0c;即过期时间戳。setcookie() 函数向客户端发送一个 HTTP cookie。cookie 是由服务器发送到浏览器…

jQuery Mobile动态刷新页面样式

见 百度经验 http://jingyan.baidu.com/article/7f766dafbc18f24101e1d014.html JQM里面当我们更新了某些页面标签(如: listview, radiobuttons, checkboxes, select menus)里的数据时,必须做refresh操作. 为什么必须做refresh操作操作呢?因为JQM在做页面渲染的时候,为了使样…

R-CNN论文翻译

R-CNN论文翻译Rich feature hierarchies for accurate object detection and semantic segmentation用于精确物体定位和语义分割的丰富特征层次结构2017-11-29摘要过去几年&#xff0c;在权威数据集PASCAL上&#xff0c;物体检测的效果已经达到一个稳定水平。效果最好的方法是融…

sass、gulp应用

Sass介绍n CSS 不是一个编程语言&#xff0c;可以用它来开发网页样式&#xff0c;但是没有办法用它进行编程。SASS 的出现&#xff0c;让 CSS 实现了通过代码编程来实现的方式。n SASS 是一种 CSS 开发工具&#xff0c;提供了许多便利的写法&#xff0c;让CSS 的处理实现了可编…

自定义控件SettingItemView

一、效果图 选中&#xff1a;显示自动更新开启不选择&#xff1a;显示自动更新关闭------------在布局文件中的使用方式和android自生的控件一样 <?xml version"1.0" encoding"utf-8"?> <LinearLayout xmlns:android"http://schemas.andro…

php中如何存储多个文本框,php-如何将每个字符的文本框拆分为多个子文本框

我正在设计一个PHP表单,其中包含一些输入字段,如下图所示.如何将输入类型(文本框)拆分为单个字符子文本框,或将文本框拆分为给定字符串的每个字符的多列文本框.以及如何在其中插入数据| JOHN DOE |进入| J | O | H | N | | D | O | E |这样解决方法:的HTML的CSS#text{backgroun…

为什么会有 AOP

为什么80%的码农都做不了架构师&#xff1f;>>> AOP 面向切面的编程。 先上三张图片 三处对数据库进行操作&#xff0c; 但这三处有大量的重复的代码&#xff0c;每次都是获取session&#xff0c;获取mapper&#xff0c;执行&#xff0c; commit&#xff0c;close…

Android应用检查更新下载安装打开

一、效果 低版本1.02检测到新版本1.03 调用android的安装activity页面 安装完成 打开 1.03版本 二、注意 必须使用签名的应用。因为android不管是虚拟机还是真机安装应用都需要签名。 在开发时&#xff0c;我们运行程序时&#xff0c;开发环境ADT会自动给我们加入一个默认的…

lnmp解析php,搭建LNMP,可以解析PHP文件-Go语言中文社区

一、安装 nginx1. yum -y install pcre-devel zlib-devel links 下载相应软件可以使用rpm -qa 软件名 来查看是否安装成功??2.useradd -u 250 -M -s /sbin/nologin nginx 建立程序用户&#xff0c;降低权限3.tar xf nginx-1.6.0.tar.gz -C /usr/src/nginx 解压并指定…

给控件添加小图标

一、效果 二、知识点 三、代码 <TextViewstyle"style/ContentStyle"android:drawableLeft"android:drawable/star_big_on"android:gravity"center"android:text"远程锁屏:#*lockscreen*#" />

加速计算,为何会成为 AI 时代的计算力“新宠”

随着科技的发展&#xff0c;处理大量数据和进行复杂计算的需求越来越高&#xff0c;人工智能、大数据和物联网等领域更是如此&#xff0c;传统的计算方式已经无法满足这些需求。因此&#xff0c;加速计算作为一种现代计算方式&#xff0c;成了必要的手段。加速计算具有前所未有…