Android中短信发送与接受

Android 实现发短信 监听短信发送状态 Android 实现短信发送 实现监听短信发送状态 对方是否已经接收到 并且保存至发件箱 立即下载

短信的发送

             两种发送方式:

                        一、利用系统的短信发送程序

                                1.Intent     发送一个隐式意图

                                   Intent    intent=new  Intent(Intent.ACTION_SENDTO);

                                   Uri   data=Uri.parse("smsto:"+"号码:例如15555215556");

                                   intent.setData(data);

                                   intent.putExtra("sms_body",etContent.getText().toString());

                                   starActivity(intent);

                                2.另外一种隐式意图

                                   Intent   intent =new   Intent(Intent.ACTION_VIEW);

                                   intent.setType('address","15555215556");

                                   intent.putExtra("sms_body",etContent.geText().toString());//获得的发送的信息

                                   startActivity(intent);

                        二、利用代码来发送短信消息

                               1.简单一些的写法

                                  SmsManager   manager=SmsManager.getDefault();

                                  manager.senTextMessage(对方手机号码,null,短信正文,null,null);

                               添加上两个PendingIntent,可以获得短信的发送状态

                                       //发送信息时间
                                      Intent   intent=new   Intent("com.tarena.SENT");
                                      PendingIntent   pi1=PendingIntent.getBroadcast(this, 0, intent, 0);

                                      //信息到达对方手机时间
                                      Intent   intent2=new Intent("com.tarena.DELIVERY");

                                      PendingIntent   pi2=PendingIntent.getBroadcast(this,0, intent2, 0);

                              利用代码发送短信,有两点要注意:

                                       1)  申请权限SEND_SMS

                                       2)  利用代码发送短信,短信是不会被系统写入数据表

短信的接收

                      安卓系统后台有一个服务(Service),专门用来接收短信消息,当有新的消息到达时,Service会发送一个广播,广播 的Action是

            “android.provider.Telephony.SMS_RECEIVED”并且将收到短消息作为广播Intent的一部分(Intent的Extra)发送出去,先到先得!

             步骤:

                     1.注册广播接收器,接收“android.provider.Telephony.SMS_RECEIVED”广播

                              在onResume中注册:重写方法和onPause配套使用

                               MyReceiver   receiver=new   MyReceiver();//自己创建的一个类,继承BroadcastReceiver
                               IntentFilter    filter=new   IntentFilter();
                               filter.addAction("com.tarena.SENT");
                               filter.addAction("com.tarena.DELIVERY");
                               filter.addAction("android.provider.Telephony.SMS_RECEIVED");
                               filter.setPriority(1001);
                               registerReceiver(receiver, filter);

                               在MyReceive中:

                                        if("android.provider.Telephony.SMS_RECEIVED".equals(action)){
                                                //可以处理短消息
                                                Bundle bundle=intent.getExtras();
                                                Object[] pdus=(Object[]) bundle.get("pdus");
                                                StringBuilder sb=new StringBuilder();
                                                String phoneNumber="";
                                                //把一个一个pdus转为一段的短消息
                                                for (int i = 0; i < pdus.length; i++) {
                                                         SmsMessage message=SmsMessage.createFromPdu((byte[])pdus[i]);

                                                         sb.append(message.getDisplayMessageBody());
                                                         phoneNumber=message.getDisplayOriginatingAddress();
                                                 }
                                                 Log.i("TAG", "发送方电话:"+phoneNumber+",发送内容:"+sb);
                                                 //“有短信”这条广播不在继续下发
                                                abortBroadcast();
                                         }

                               在onPause()中注销:

                                         unregisterReceive

                     2.必须设定权限RECEIVE_SMS

                     3.设定较高的优先级(1000左右)

                               filter.setPriority(1001);

                     4.如果不希望系统的短信程序接收短信,就执行abortBroadcast();,广播停止下发

            问题:如果系统短信接收程序收不到短信了,那么这条短信也不会被写入数据库



最新 抖音 X-Gorgon 0408 和8408 设备注册协议 抖音app先是检测了你的手机cpu架构,是x86还是armeabi,通过cpu架构的不同来调用so内不同的xg方法,所以导致现在最新版抖音app的xg算法有0408和8408两种。两种都是最新版,因为我发现当我使用oppo手机安装最新版抖音抓包的xg是8408,而当我用小米或者华为安装最新版抖音,抓包以后发现xg是0408。抖音IOS XG84 设备注册激活协议代码片段。... 阅读详情

相关推荐

实战指南:R语言多组倾向评分逆概率加权(IPTW)建模与结果解读

本文详细介绍了如何使用R语言实现多组倾向评分逆概率加权(IPTW)建模,包括数据预处理、倾向评分估计、权重计算及结果解读。通过实战案例演示,帮助研究者掌握这一统计方法,有效平衡多组混杂因素,模拟随机对照试验效果,适用于医学、社会科学等领域的数据分析。

weixin_42528534的博客 396

Android 短信发送接收笔记

短信的发送              两种发送方式:                         一、利用系统的短信发送程序                                 1.Intent     发送一个隐式意图                                    Intent    intent=new  Intent(Intent.ACTI

zxx980782324的博客 1439

RabbitMq安装

本文详细介绍了在CentOS7系统上离线部署RabbitMQ4.3.2的完整流程。主要内容包括:1)准备RabbitMQ安装包、Erlang依赖和socat网络工具;2)安装系统编译依赖并编译安装Erlang;3)部署RabbitMQ服务,配置环境变量和socat依赖;4)启用Web管理插件并创建管理员账号;5)配置防火墙放行端口;6)设置Systemd开机自启服务;7)提供常用运维命令。文档特别强调离线部署注意事项,包括socat依赖、版本兼容性、账号安全及主机名配置等问题,为生产环境部署提供完整解决方案

sinat_25821779的博客 323

Android 读取、接收、发送 手机短信

:https://www.cnblogs.com/ycclmy/tag/android/ 1、Android 读取手机短信 From:https://www.cnblogs.com/ycclmy/p/3193075.html 获取 android 手机短信需要在 AndroidManifest.xml 加权限: <uses-permission android:name="android.permission.READ_SMS" /> 获取短信只需要得到 Cont..

freeking101的博客 1万+

Altium Designer 21 DRC检查:从新手到高手,这10个常见错误你踩过几个?

本文详细解析Altium Designer 21 DRC检查中的10个高频错误,包括间距违规、线宽违规、未连接网络等常见问题,并提供精准修复方案和实战技巧。通过分层诊断、智能规则设置和三维排查等方法,帮助工程师从新手进阶为高手,提升PCB设计效率和质量。

weixin_26873711的博客 222

实验室LIMS系统选型指南:从赛默飞到金现代,5大主流方案横评

本文深入分析了实验室LIMS系统选型的5大核心维度,包括架构选择、行业适配性、合规性设计、智能化程度和成本模型。通过对比赛默飞、金现代等主流厂商的优劣势,提供实战避坑策略,帮助实验室管理者做出明智决策,提升运营效率和合规水平。

plum99的博客 259

android跳转本地发送短信界面

跳转短信界面

Kazichs的博客 9058

Windows10 搭建 FTP 服务器

问题: 有这么一个需求,博主需要对班级同学的信息进行收集,同学的信息是一个个的文件, 正常是每个同学将自己的信息打包压缩通过 QQ 或者邮箱方式发送给博主, 博主一个个接收这些压缩包,然后进行解压,再统一放到一个文件夹下, 但是博主觉得这样子实在是太麻烦了,如果某一个同学的信息来回变动,就需要接收很多次,更改很多次, 另外如果消息过多还会产生漏掉某个同学的信息的问题。 解决方法: 如果可以使...

assiduous_me的博客 3965

短信的接收,短信的发送

发送短信的几种方式: 第一种:直接发送一个隐式意图,访问android中自带的发送短消息//1发送一个隐式意图用模拟器发送短消息  Intent intent = new Intent(Intent.ACTION_SENDTO);  Uri data = Uri.parse("smsto:"+"手机号码"); intent.setData(dat

项海涛的个人随笔 1686

Android Studio安装常见问题详解——Android Emulator Hypervisor Driver for AMD Processors installation failed.

目录一、问题描述二、解决方案2.1 开启CPU虚拟化2.2 禁用Hyper-V2.3 使用管理员命令行在驱动程序包中执行“silent_install.bat” 一、问题描述 新买的AMD轻薄本,在安装Android Studio时遇到问题: Android Emulator Hypervisor Driver for AMD Processors installation failed. 笔记本配置为: 二、解决方案 2.1 开启CPU虚拟化 设置虚拟化的步骤这里不进行详细介绍了。如果需要,可以自行百

Wendy的博客 4万+

静态时序分析(Static Timing Analysis, STA):简介及内容导航

静态时序分析(简称STA)是用来验证数字设计时序的技术之一,另外一种验证时序的方法是时序仿真,时序仿真可以同时验证功能和时序。“时序分析”这个术语就是用来指代“静态时序分析“或”时序仿真“这两种方法之一,简单来说,时序分析的目的就是为了解决设计中的各种时序问题。STA被称为静态的原因是其对于设计的分析是静态地执行的,并不依赖于施加在输入端口上的激励。相比之下,时序仿真则可以被视作动态地执行对设计的分析,具体过程描述如下:施加一组激励,观察在这组激励下电路行为是否符合要求,然后换一组激。

Starry__的博客 1993

Android发送短信并监测发送状态

Android发送短信功能,直接上代码 1、java类 Operation3GActivity.java package com.jinlinbao.logisticsbox.ui.logisticsComm; import android.app.Activity; import android.app.Dialog; import android.app.PendingInten

宋中坤 708

【人工智能】Spring AI项目在定义 `response_format` 的 Invalid schema for response_format ‘custom_schema‘

确保。

奶爸的编程之路,也就一周冷个三天 562

android短信发送和接受

短信发送发短信第一件事是在manifest文件中添加权限<uses-permission android:name="android.permission.SEND_SMS" /> 第一方法:调用系统发短信的应用 /** * 调起系统功能发短信 * @param phoneNumber * @param message

Vincent 4757

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

Android 接受短信和发送短信

[转载] 原文:     http://my.oschina.net/gzcb/blog/84805 1.android发送短信                 android API 中提供了smsManager类处理短信。其中的sendTextMessage(num, null, content, pend, null)函数就是发送         短信的方法。第一个参数为目

huangxiaohui123的专栏 563

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

Android监听发送短信和接受短信的事件

一. 收短信      收短信很简单,接受相应的BroadcastReceiver消息即可。代码如下: public class MyBroadcastReceiver extends BroadcastReceiver { @Override public void onReceive(Context context, Intent intent) { // TODO Auto-

mdcire的专栏 1417

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

android 发送短信和接受短信模块

android 发送短信:

ranyongqing的专栏 935

Android9.0 短信发送和彩信接受流程

一、短信发送流程 在短信发送界面点击发送按钮后(ComposeMessageActivity响应OnClick),ComposeMessageActivity首先会对一些相关条件进行check(例如发件人是否有效等),然后会调用sendMessage来发送短信。在sendMessage中最终会使用WorkingMessage.send来发送,而send中又最终调用sendSmsWorker来发送...

yaoming168的专栏 3601

Android上的文本/数据短信(发送/接受/拦截)

1) 发送文本短信:极简单: SmsManager smsMgr = SmsManager.getDefault(); Intent sentIntent = newIntent("com.myself.action.SMS_SEND_RESULT"); PendingIntent dummySentEvent =PendingIntent.getBroadcast(MyActivi

tao2tutu的专栏 1036

【慢慢学Android】:6.发送和接受短信

发送短信: package com.henii.SMS; import java.util.ArrayList; import android.app.Activity; import android.os.Bundle; import android.telephony.SmsManager; import android.view.View; import and...

weixin_30498921的博客 76

android短信接受震动,Android中实现拨打电话、发送短信、响铃、震动和获取当前时间...

如果要实现以下功能,需先在Androidmainifest.xml中注册来获取权限,xml代码如下:请求获取发送短信权限请求获取拨打电话权限请求截获短信的权限请求读取手机状态的权限请求震动的权限拨打电话public void CallPhone(Context context,String phoneNum){ //拨打电话//context 上下文//phoneNum 手机号Intent int...

weixin_39962758的博客 282

Android--屏蔽短信界面,在后台发短信

最近项目中要实现这个功能,在后台发送短信,我承认这个功能用户无法感知,是一个不好的东东,但是如果加上界面上的提示的话,也还是可行的。 发短信有两种方法,第一种很简单,就是使用intent跳转到系统自带发短信的界面,然后由用户点击Send。 第二种方法就是本文所说的,其实很简单

火山哥的专栏 9458

Android手机上监听短信有两种方式

Android手机上监听短信有两种方式: 1、 接受系统的短信广播,操作短信内容。 优点:操作方便,适合简单的短信应用。缺点:来信会在状态栏显示通知信息。 AndroidManifest.xml:   2、 应用观察者模式,监听短信数据库,操作短信内容。优点:可以拦截来信在状态栏的显示通知,适合作短信拦截。缺点:可以发展成MU,在后台悄悄的收/发短信。 

z303729470的专栏 1192

android 发送短信的两种方式,以及接收报告和发送报告

android发送短信,以及接收报告和发送报告 android中发送短信其实有两种方式,这个和打电话类似,大家可以了解一下: 一、调起系统发短信功能 代码如下: /** * 调起系统发短信功能 * @param phoneNumber 发送短信的接收号码 * @param message 短信内容 */ public vo...

nigat的博客 411
上一篇: Android应用如何匹配不同手机分辨率
下一篇: Android 数据库ORMLite用法
zwyAndroid
博客等级 码龄11年 5粉丝 42原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值