今日科技快讯

近日,Uber的创始人卡拉尼克终于被迫离职了。自进入2017年以来,Uber的麻烦事就没有断过。先是由于支持特朗普的限制移民政策而成为众矢之的,接着又被前女性员工控诉在Uber时长期受到性骚扰,之后又被谷歌控诉非法从谷歌这里获取无人驾驶技术。Uber是目前所有未上市公司中估值最高的公司,董事会急于想摆脱公司如此多的负面影响,于是就在上周,卡拉尼克宣布自己将开始无限期休假。但董事会对此明显还是不够满意,继续向卡拉尼克施压。卡拉尼克昨日无奈宣布自己正式辞职,并且会协助招聘新的Uber CEO。

作者简介

又到周五了,开心的周末即将到来。另外今天0点钟《变形金刚5》上映喽,周末快带上女朋友去看电影吧。

本篇是 MichaelX 的第五篇投稿了,分享了一个开源库,主要是自动识别短信验证码,希望对大家有所帮助。

MichaelX 的博客地址:

http://blog.csdn.net/xiong_it

AutoInputAuthCode使用介绍

在 Android Studio 打开你的 app module 中的 build.gradle,添加依赖:

如果无法下载上述依赖,可以打开你的项目根目录下的 build.gradle,添加 maven 仓库地址:

示范代码

AutoInputAuthCode 是一个帮助android开发者快速实现自动填写验证码的类库,客户端示例代码如下:

1. 通过单例获取一个 AuthCode 对象;

2. 提供一个上下文对象给 AuthCode,放心,我会妥善处理你的上下文;

3. 提供一个你的验证码特征描述;

4. 告诉 AuthCode 你想将验证码写入哪个 EditText.

效果图

注意事项

自动填写验证码需要读取短信权限,请在清单中添加权限:

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

由于读取短信在API 23(Android 6.0)上权限级别是 dangerous。所以还需要动态申请权限,但是申请权限需要依赖于 Activity 或者 Fragment 中的 onRequestPermissionsResult() 回调,所以需要开发者自己实现。

实现原理

此技术的实现原理是“广播接收者”和“内容观察者”。利用接收到短信时的系统发出的广播进行短信的读取,并利用正则表达式解析出短信中的验证码。

在部分手机上,该广播被禁用,所以需要使用到内容观察者,在短信收件箱发生变化时,对短信数据库进行读取,得到相应验证码短信,并利用正则表达式解析出短信中的验证码。本文内容请使用于正规用途,请勿用于非法监听用户短信等恶意行为。谢谢合作!

使用广播接收者获取验证码

广播接收者一般用法:

1. 继承 BroadcastReceiver

2. 重写 onReceive(Context context, Intent intent);

3. 注册自定义广播接收者(1.代码动态注册;2.清单文件注册)

使用广播接收者获取验证码实现代码如下:

以上,从短信广播中得到了 Message 实例,并得到短信。验证码获取方法为 parseSmsBody(String smsBody),最后会统一讲解。

使用内容观察者得到短信验证码

内容观察者的一般用法

1. 继承内容观察者 ContentObserver

2. 重写 onChange(boolean selfChange)方法

3. 注册内容观察者

context.getContentResolver().registerContentObserver(uri, true, mReadSmsObserver);

使用内容观察者获取验证码实现代码如下:

注意:注册短信观察者的 Uri 和获取 Cursor 的 Uri 不相同,如果使用获取 Cursor 的 Uri 进行注册,则得不到 onChange 回调。

正则表达式解析短信得到验证码

将上述从广播接收者,内容观察者中得到的 smsCode 填入 EditText 输入框中即可。

项目地址:

https://github.com/xiong-it/AutoInputAuthCode

更多

每天学习累了,看些搞笑的段子放松一下吧。关注最具娱乐精神的公众号,每天都有好心情。

如果你有好的技术文章想和大家分享,欢迎向我的公众号投稿,投稿具体细节请在公众号主页点击“投稿”菜单查看。

欢迎长按下图 -> 识别图中二维码或者扫一扫关注我的公众号:

快速实现自动填写验证码的功能相关推荐

  1. 爬虫学习_selenium自动填写验证码

    爬虫学习_自动填写验证码 介绍一哈 项目 第一步 打开网站 第二步 获取验证码图片 第二步 获取验证码图片 第三步 识别验证码 结束 完整代码 介绍一哈 最近在跟着静觅大神.............. ...

  2. 截取短信验证码,实现自动填写验证码

    一个小功能实现短线验证码验自动填写功能. 拿到这个功能时,首先需要怎么去拦截获取手机短信.就用观察着来观察系统里的短消息的数据库的变化,"表"内容观察者,只要数据库发生变化,都会出 ...

  3. Android 自动填写验证码

    获取验证码几乎是每个应用所必备的,很多应用在用户注册的时候设置一个验证码的功能,根据手机号获取验证码的作用就是防止恶意注册.先来看一下效果图 上面的效果就是读取短信的信息,然后根据信息内容将验证码截取 ...

  4. 腾讯地图类快递自动填写收发货地址功能

    开发场景 获取当前位置信息或者某地的行政区划信息或者街道信息,实现类似电商平台填写收货地址功能. 技术选型 微信小程序JavaScript SDK 微信小程序插件 确定业务逻辑及页面设计 以简洁大气为 ...

  5. 微信小程序类快递自动填写收发货地址功能

    开发场景 获取当前位置信息或者某地的行政区划信息或者街道信息,实现类似电商平台填写收货地址功能. 技术选型 微信小程序JavaScript SDK 微信小程序插件 确定业务逻辑及页面设计 以简洁大气为 ...

  6. 从零设计开发快递自动填写收发货地址功能

    开发场景 获取当前位置信息或者某地的行政区划信息或者街道信息,实现类似电商平台填写收货地址功能. 技术选型 微信小程序JavaScript SDK 微信小程序插件 确定业务逻辑及页面设计 以简洁大气为 ...

  7. c语言如何自动填写验证码,小程序 自带样式的验证码自动填入

    一.业务场景:像ios手机上的获取到验证码,,会在键盘上显示,点击,会自动填入到输入框里面:这时候输入框是一个input还好,,他会自动填入,但是现在要求是验证码的6位数字是分开的,原生的一个inpu ...

  8. Android短信验证码自动填写功能的实现

    本文出自:黄敏争的博客 前言: android应用经常会涉及到注册登录功能,而许多的注册登录或修改密码功能常常需要输入短信验证码,通常,用户收到短信需要最小化应用去查看短信再填入验证码,必然比较麻烦, ...

  9. 短信验证码自动填写功能的实现

    http://blog.csdn.net/u014343528/article/details/50899380 本文出自:黄敏争的博客 前言: android应用经常会涉及到注册登录功能,而许多的注 ...

最新文章

  1. 下载mysql镜像教程_docker下安装mysql镜像
  2. es6 对象中是否有键值_干货| ES6/ES7好玩实用的特性介绍
  3. 2021-07-3022
  4. 无线路由器在手机上如何连接服务器,192.168.10.1路由器手机怎么设置? | 192路由网...
  5. CNN经典模型:VGGNet
  6. lower版购物车模拟
  7. 让AI自动调参,才是百度无人车的进化方式:适应环境全靠自己 | 论文
  8. 使用WebService的方式调用部署在服务器的Wcf服务
  9. windows下工具
  10. Tecplot 安装记录
  11. 史上最全Java学习路线:免费全套Java视频合集 (基础+进阶+高级+项目+面试题)
  12. 软考高级 真题 2011年下半年 信息系统项目管理师 综合知识
  13. 夏天计算机自动关机,电脑频繁自动关机,原因可能出在这
  14. 周期性的方波 matlab,matlab产生方波脉冲和周期性方波信号 - 副本
  15. 浅谈安卓逆向协议(二)- 抖音,皮皮虾
  16. 阿里云ECS和WorldPress + Nginx实现固定连接策略
  17. AI、量子计算引爆硬科技创新,雷鸣、王海峰、施尧耘等北大120周年论道信科最前沿...
  18. win7 安装openssh_05、Win7上openSSH的安装与配置
  19. C#操作Word文档
  20. 关于计算机的英语谚语,经典英语谚语60句

热门文章

  1. 使用wkhtmltopdf+pdftk 实现多个不同宽高pdf合成一个pdf
  2. iOS15 API 新特性
  3. 基于iBeacon指纹的室内定位系统论文笔记
  4. 股份期权激励协议书模板
  5. 微积分 / 自动求导
  6. dbms 计算机辅助设计,计算机辅助设计(CAD).ppt
  7. 外贸商务网站php源码,semcms外贸网站php版 v3.9
  8. 微软官方Windows Server 2003相关教程免费下载
  9. 汽车电子行业的“AUTOSAR”到底是什么?
  10. exchange 开源归档系统