当前位置:首页 > 科技数码

获取验证码 获取短信验证码

在做获取验证码的工作之前,边肖做了一些研究,就是咨询了一些有经验的人,如何获取短信的验证码,得到了三种方法,可能不全。请告诉上帝。

卡猫(支付)

安卓短信广播

第三方代码访问平台(付费)

收费分两种,因为清不考虑。大家分享一下,如果你是通过安卓广播获得短信验证码的话。

Android会发送一个广播,它的Action是Android . provider . telephony . SMS _ received在收到短信后,所以我们只需要编写一个类来继承BroadcastReceiver,就可以很方便的收听短信了。

边肖这样做,首先安装一个android studio,然后构建一个新的项目,然后在构建项目之后转到该项目-& gt;app->;src - >。main->;java ->。在com.example.xxx.myapplication下,创建一个新文件,文件名为SmsInterceptReceiver。输入以下代码。如果您发现有些类名在复制后是红色的,这意味着您没有包指南。在mac上按alt+enter并添加一个包。请点击百度获取窗口的快捷键。

package com . example . getsms;

导入Android . content . BroadcastReceiver;

导入Android . content . ContentResolver;

导入Android . content . context;

导入Android . content . intent;

导入Android . OS . bundle;

导入Android . telephone . smsmessage;

导入Android . util . log;

/**

*由xxx于2028年3月17日创建。

*/

公共类SmsInterceptReceiver扩展了BroadcastReceiver {

private final String TAG = " SMsrec ";

私有静态最终字符串SMS _ EXTRA _ NAME = " pdus

@覆盖

接收时公共无效(上下文上下文上下文,意图意图)

// TODO自动生成的方法存根

string message = ";

Log.e(TAG,“免费消息”);

bundle extras = intent . getextras();

if ( extras!= null ) {

尝试{

Object[]smsExtra =(Object[])extras . get(SMS _ EXTRA _ NAME);

content resolver content resolver = context . GetContentresolver();

Log.e(TAG,“免费消息”);

for(int I = 0;i <。smsExtra.length++(I){

短信短信短信=短信短信。((byte[])smsExtra[I]);

String body = sms.getMessageBody()。toString();

message+= body;

}

Log.e(TAG,"免费消息:"+消息);

}捕获(例外e) {

// TODO:处理异常

Log.e(TAG,e . GetMEssage());

}

}

}

}

在AndroidManifest.xml中注册接收者(该文件位于java对等目录res下):

以下代码可以添加到同一级别的活动标签下

& lt接收者android:name=。SmsInterceptReceiver " >;

& lt意图过滤器>。

& ltaction Android:name = " Android . provider . telephony . SMS _ RECEIVED "/& gt;

& lt/intent-filter>。

& lt/receiver>。

添加权限(是上面的xml文件,如果你有疑惑,问问你的Android开发):

下面的代码被添加到应用程序标签中

& ltuses-permission Android:name = " Android . permission . RECEIVE _ SMS "/& gt;

手机连接电脑,打开USB调试。Adb设备检查手机是否连接。准备完成后,点击android studio页面上的绿色三角形按钮运行。如果运行成功,手机上会有一个页面,上面有你自己项目名称的蓝色标题。��

Python代码,主要是通过adb日志获取apk包截获的短信信息,然后分析使用。

#coding=utf-8

导入操作系统

def GetCodeFromSms():

os.system("adb logcat -c ")

cmd = ' adb logcat -d |grep E/SmsRec '

while(1):

smscode = os.popen(cmd)。阅读()

打印smscode

if (smscode!=""):

Smscode = smscode.split("验证码:")[1]。拆分(“,”[0]

打破;

打印“验证码为:“+smscode

if __name__ == '__main__ ':

GetCodeFromSms()

因为边肖使用mac,所以grep用于过滤。如果您是windows,请将其更改为findstr。

文件编辑放在终端的文件夹中,运行python文件,通过接口发送验证码给链接的手机,或者通过其他手机发送验证码给连接的手机进行测试。可以在终端看到输出的验证码,然后根据自己的需要取出来。

E/SmsRec (12345):免费留言

E/SmsRec (12345):免费留言

E/SmsRec (12345):免费留言:验证码:654321

验证码是654321

至于为什么多了几条免费消息,那是因为java代码的开发是用log . E/调试的,是错误消息的意思,但是可以显示。D/是调试消息,I/是一般消息W/是警告消息V/是各种混沌消息

以上是今天的分享。如有不足或问题,可以在留言中反馈。另外,现在的代码有点问题。如果没有收到短信,就会陷入无限循环,就是可以看到python文件一直在运行,但是没有输出短信验证码。可以写一个循环来判断。如果得到验证码,就会跳出循环。如果你不明白,你将被暂停。欢迎任何解决方案!

其实github上有一个共享的apk,但是打包后apk页面显示收到的验证码为空,权限是根据readme配置的。哪位朋友做过,请回答为什么,github文章链接。

https://github.com/Robin-jiangyufeng/SmsObserverForAndroid

零符号

零符号

考白

每天都有一篇文章精彩

天天问,每句话都是原创

提交邮件:csbaixiaosheng@163.com

微信号:ces Shi Bai小生

1.《获取验证码 获取短信验证码》援引自互联网,旨在传递更多网络信息知识,仅代表作者本人观点,与本网站无关,侵删请联系页脚下方联系方式。

2.《获取验证码 获取短信验证码》仅供读者参考,本网站未对该内容进行证实,对其原创性、真实性、完整性、及时性不作任何保证。

3.文章转载时请保留本站内容来源地址,https://www.lu-xu.com/keji/1202687.html

上一篇

绵阳小区发生爆炸致多少人受伤具体什么情况

下一篇

柯洁晒清华录取书 柯洁为什么被保送柯洁资料

新疆地震最新消息 新疆库车发生5.6级地震

新疆地震最新消息 新疆库车发生5.6级地震

中国地震台网正式测定:01月16日16时32分在新疆阿克苏地区库车县(北纬41.21度,东经83.60度)发生5.6级地震,震源深度16千米。...

网易游戏裁员10%的消息是真的吗 官方怎么回应的

网易游戏裁员10%的消息是真的吗 官方怎么回应的

最近网上流传网易要裁员,网易游戏营销副总裁向朗近日辞职。在网易各业务裁员风暴中,游戏业务也未能幸免,有10%的裁员被举报。7月29日,网易游戏官方没有回应网易游戏营销副总裁向朗辞职的消息。而游戏业务被裁员10%的消息,则表示为假新闻。但是网友们...

300203 成员风采|首届主任委员单位—聚光科技(杭州)股份有限公司.绿色科技引领者(股票代码:300203)

  • 300203 成员风采|首届主任委员单位—聚光科技(杭州)股份有限公司.绿色科技引领者(股票代码:300203)
  • 300203 成员风采|首届主任委员单位—聚光科技(杭州)股份有限公司.绿色科技引领者(股票代码:300203)
  • 300203 成员风采|首届主任委员单位—聚光科技(杭州)股份有限公司.绿色科技引领者(股票代码:300203)

聚光科技股票 成员风采|首届主任委员单位—聚光科技(杭州)股份有限公司.绿色科技引领者(股票代码:300203)

  • 聚光科技股票 成员风采|首届主任委员单位—聚光科技(杭州)股份有限公司.绿色科技引领者(股票代码:300203)
  • 聚光科技股票 成员风采|首届主任委员单位—聚光科技(杭州)股份有限公司.绿色科技引领者(股票代码:300203)
  • 聚光科技股票 成员风采|首届主任委员单位—聚光科技(杭州)股份有限公司.绿色科技引领者(股票代码:300203)

水游城 重磅消息!水游城即将启动全面升级

  • 水游城 重磅消息!水游城即将启动全面升级
  • 水游城 重磅消息!水游城即将启动全面升级
  • 水游城 重磅消息!水游城即将启动全面升级
2017舒城中学录取分数线 注意!2017年淳安各高中学校录取分数线全部揭晓,还有一个好消息……

2017舒城中学录取分数线 注意!2017年淳安各高中学校录取分数线全部揭晓,还有一个好消息……

昨天我们县公布了淳安中学最低录取分数线,今天其他所有普通高中也都公布了!按照普通高中1: 1.1招生计划,普通高中最低录取控制线定为381.95分,根据招生计划和学生志愿由高分到低分录取。 2017年淳安县高中录取分数线学校最低录取控制线实际招...

呼和浩特到北京 好消息!内蒙人未来3个小时以内就可以从呼和浩特到北京啦,很多人还不知道…

呼和浩特到北京 好消息!内蒙人未来3个小时以内就可以从呼和浩特到北京啦,很多人还不知道…

张虎高速铁路预计全年通车 连接河北张家口和内蒙古呼和浩特的张虎高速铁路,不仅是全国八纵八横高速铁路网中京兰通道的重要组成部分,也是内蒙古自治区通往京津冀地区的主要高速铁路通道。张虎高速铁路全长286公里。呼和浩特至乌兰察布段于去年8月开通。预计...

短信只提示不显示内容 OPPOr9手机怎么设置来短信时不显示短信详细内容?

楼主你好。设置-通知管理仅打开“允许通知”和“在桌面图标上显示角标”。这样收到的短信内容就不会显示在屏幕上,短信图标上只会显示几个数字。...