adnroid 监听收到的短信并根据短信内容进行回复短信
定义一个广播接收器
public class SMSReceiver extends BroadcastReceiver {
    private SmsManager smsManager;
    @Override
    public void onReceive(Context arg0, Intent intent) {
        if(intent.getAction().equals("android.provider.Telephony.SMS_RECEIVED")){
            SharedPreferences sp = arg0.getSharedPreferences("MSG_SEND_RESULT", Activity.MODE_PRIVATE);
            SharedPreferences.Editor editor = sp.edit();
            smsManager = SmsManager.getDefault();
            Object[] pdus=(Object[])intent.getExtras().get("pdus");
            SmsMessage[] message=new SmsMessage[pdus.length];
            for(int i=0;i<pdus.length;i++){
                message[i]=SmsMessage.createFromPdu((byte[])pdus[i]);
                String msgAddr = message[i].getDisplayOriginatingAddress();
                String msgContent = message[i].getDisplayMessageBody();
                //自动回复短信
                String content = "";
                int count = 0;
                if(msgContent.trim().equals("1")){//android
                    content = "android";
                    smsManager.sendTextMessage(msgAddr, null, content, null, null);
                    count = sp.getInt("android", 0)+1;
                    editor.putInt("android", count);
                    editor.apply();
                }else if(msgContent.trim().equals("2")){//ios
                    content = "ios";
                    smsManager.sendTextMessage(msgAddr, null, content, null, null);
                    count = sp.getInt("iphone", 0)+1;
                    editor.putInt("iphone", count);
                    editor.apply();
                }
            }
        }
    }
}
添加权限:
<uses-permission android:name="android.permission.SEND_SMS"/>
<uses-permission android:name="android.permission.RECEIVE_SMS"/>
注册receiver
<receiver android:name="com.auto.SMSReceiver">
<intent-filter>
<action android:name="android.provider.Telephony.SMS_RECEIVED" />
</intent-filter>
</receiver>
adnroid 监听收到的短信并根据短信内容进行回复短信的更多相关文章
- adnroid 监听软键盘的显隐
		首先注明出处,我只是想做个笔记:http://www.jb51.net/article/64820.htm 第一眼看到的时候,觉得不太可靠,因为之前都是看到这样处理的,根据监听一个根布局的size,可 ... 
- SpringBoot系列——事件发布与监听
		前言 日常开发中,我们经常会碰到这样的业务场景:用户注册,注册成功后需要发送邮箱.短信提示用户,通常我们都是这样写: /** * 用户注册 */ @GetMapping("/userRegi ... 
- apiCloud事件发送与监听
		apiCloud事件发送与监听 1.sendEvent 将任意一个自定义事件广播出去,该事件可在任意页面通过 addEventListener 监听收到. sendEvent({params}) 2. ... 
- ORACLE监听理解
		参考官方文档Net Services Reference的7 Oracle Net Listener Parameters (listener.ora) 1 监听概念 oracle监听,是个服务器端进 ... 
- 解决如何监听Activity切换
		本篇博文在我之前的博文中已经提到了,但是监听Activity切换又可以作为一个单独的内容来叙述,因此这里又单独拿了出来进行赘述. Activity的切换无非有两种,第一种:启动或者创建一个新的Acti ... 
- 完美解决android软键盘监听
		最近在做应用性能调优,发现在一个包含有输入框的Activity中,当软键盘弹出的时候,如果直接finish掉此Activity,那么在返回到上一个Activity时,界面的渲染会由于软键盘没有及时的收 ... 
- Oracle静态监听与动态监听概念全解析
		基于11g,linux5.5做出的测试,单实例数据库做出的测试. 1.注册 Instance到监听器去注册自己的Instance_name与ORACLE_HOME,还可以选择添加global_dbna ... 
- 实时监听input输入内容的N种方法
		现在有一个需求,需要我们实时监听input输入框中的内容,从而带来更好的用户体验,而不是等我们全部输入完毕才告诉我们格式不对首先我们创建一个input输入框 <form name='loginF ... 
- 11g R2 rac linstener 监听配置
		两个节点host,ipvip ,scan的信息 #eth0-Public IP 162.12.0.1 cqltjcpt1 162.12.0.3 cqltjcpt2 #eth1 PRIVAT ... 
随机推荐
- Android调用系统的Activity、ContentProvider、Service、Broadcast Receiver
			Intent-------->Action |_____________Activity------------------------------->Intent Action |___ ... 
- 这样就算会了PHP么?-1
			公司有用到这些业务,多了解一下总是没错的. 现在开始一系列的PHP学习啦... <?php $boo=true; if($boo==true) echo '变量$boo为真!'; else ec ... 
- BZOJ 2527 Meteors
			http://www.lydsy.com/JudgeOnline/problem.php?id=2527 思路:整体二分 #include<cstdio> #include<cmat ... 
- 对拍 For Linux
			#!/bin/sh g++ -g gene.cpp -o gene g++ -g a.cpp -o a g++ -g b.cpp -o b while true; do ./gene > in ... 
- Altium designer快捷键
			1. 先设置参数,开启高亮显示,见下图红圈处: (1)选择使能可以高亮:CTRL+鼠标左键点击相应PCB网络即可高亮 (2)选择仅切换键时高亮显示,可以在CTRL+鼠标左键点击相应PCB网络高亮后,移 ... 
- OpenUrl 的跨平台实现
			OpenUrl 是 iOS 中 UIApplication 提供的一个函数,用于调用其它程序.实际上各个平台都有自己的实现,这里提供一个直接封装完的跨平台版本给大家. Delphi ... 
- 【转】将Vim改造为强大的IDE—Vim集成Ctags/Taglist/Cscope/Winmanager/NERDTree/OmniCppComplete(有图有真相)
			原文网址:http://blog.csdn.net/bokee/article/details/6633193 工欲善其事,必先利其器.一个强大的开发环境可以大大提高工作效率.好吧,我知道这是废话.. ... 
- 基于Bootstrap 3.x的免费高级管理控制面板主题:AdminLTE
			AdminLTE 是一个基于Bootstrap 3.x的免费高级管理控制面板主题.AdminLTE - 是一个完全响应式管理模板.基于Bootstrap3框架.高度可定制的,易于使用.适合从小型移动设 ... 
- VS2012/2013编辑器问题
			1. Visual Studio 2013 'Could not evaluate Expression' Debugger Abnormality 解决办法:http://weblog.west-w ... 
- 文件夹65ad47d7-2e27-4a5c-b238-26643fdaeb98
			这几天发现电脑中毒了,本地开的服务预览页面时,页面会被插入Html代码.我用360扫描之后发现有木马病毒(c:\programData有个65ad47d7-2e27-4a5c-b238-26643fd ... 
