android实现短信验证码自动填写功能是什么,安卓短信验证码自动填充 实现

android实现短信验证码自动填写功能是什么,安卓短信验证码自动填充 实现,Android实现短信验证码自动填写功能

本文主要介绍Android的短信验证码自动填充功能,感兴趣的朋友可以参考一下。

本例分享Android自动填写短信验证码的功能,供大家参考。具体情况如下

这个想法很简单:

1.在需要输入验证码的活动代码中注册并监控SMS的广播。

2.拦截短信,获取验证码。

3.写回编辑文本

private SmsReciver SmsReciver=new SmsReciver();

/* *收到短信操作**/

string ACTION _ SMS _ reci ver=' Android . provider . telephony . SMS _ RECEIVED ';

/**

*注册的广播接收端监控短信验证码并自动回写,可在onCreate()中注册;

*/

私有void registSmsReciver() {

intent filter filter=new intent filter();

filter . addaction(ACTION _ SMS _ reci ver);

//设置优先级,否则将无法收听短信。

filter . set priority(1000);

register receiver(SMS receiver,filter);

}

/**

* SMS广播接收器用户监控SMS并自动填写验证码。

*/

私有类SmsReciver扩展BroadcastReceiver {

@覆盖

公共void onReceive(上下文语境,意图意图){

Object[]objs=(Object[])intent . get extras()。get(“PDU”);

for (Object obj : objs) {

yte[]PDU=(byte[])obj;

SMS message SMS=SMS message . createfrompdu(PDU);

//消息的内容

string message=SMS . getmessagebody();

Log.d('log ',' message '消息);

//短信手机号。如果贵公司发送的验证码数量是固定的,可以在这里查看数量。

string from=SMS . getoriginatingaddress();

log . d(" log "," from " from);

analysisVerify(消息);

}

}

}

/**

*解析短信,写回来。这里解析的短信是纯数字。如果小伙伴的验证码中含有字母,可以用常规的代替。

*

* @param消息

*/

私有void analysisVerify(字符串消息){

char[]msgs=message . tochararray();

string buffer sb=new string buffer();

for(int I=0;i msgs.lengthi ) {

if ('0'=msgs[i] msgs[i]='9') {

sb . append(msgs[I]);

}

}

metverifycode . settext(sb . tostring());

}

@覆盖

受保护的void onDestroy() {

super . on destroy();

//取消短信广播的注册

if (smsReciver!=null) {

unregister receiver(SMS receiver);

smsReciver=null

}

}

可以看到,代码逻辑比较简单,有几点需要注意。我们这里用的代码注册广播,之所以不采取全局广播的形式,是因为两天。在更高版本的api中,注册全局短信监控将无效。而且就业务而言,我们只能在输入验证码的活动中监控短信。采用代码注册的形式,在当前活动被破坏时取消广播注册,更符合我们的预期,提高了应用的性能。

第二个需要注意的问题是优先级的问题。

filter . set priority(1000);

如您所见,我们在这里将优先级设置为最高。确保我们的应用程序能够尽可能多地接收短消息。注意,我用的是“尽可能”,也就是说,我们不能保证短信的自动填充会成功执行。有小伙伴可能会问,我们不是把优先级设到最高了吗?

为什么还不能保证了?

其实原因很简单。您可以将短信监控的优先级设置为最高。同样,其他应用程序也可以将短信监控的优先级设置为最高。比如你的手机装了360安全卫士,你公司的验证码被视为垃圾短信拦截。此时短信拦截将失效。

这就是本文的全部内容,希望对大家的学习有所帮助。

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

相关文章阅读

  • qq短信验证码发送失败怎么回事,qq验证码失败是怎么回事
  • ,,使用阿里大于(大鱼)平台进行发送手机验证码的流程
  • ,,SpringSceurity实现短信验证码登陆
  • android读取短信验证码,
  • android读取短信验证码,,Android使用MobSDK短信验证
  • android自动获取短信验证码功能在哪,安卓自动获取短信验证码
  • android自动获取短信验证码功能在哪,android自动获取短信验证码功能失效,Android自动获取短信验证码功能
  • android实现短信验证码自动填写功能是什么,安卓短信验证码自动填充 实现,Android实现短信验证码自动填写功能
  • android如何通过手机自动获取短信验证码信息,安卓自动获取短信验证码
  • android如何通过手机自动获取短信验证码信息,安卓自动获取短信验证码,Android如何通过手机自动获取短信验证码
  • ,,python网络爬虫实现发送短信验证码的方法
  • ,,Python实现滑块拼图验证码详解
  • ,,python3 破解 geetest(极验)的滑块验证码功能
  • 发验证码不在桌面显示,验证码能收到桌面上不显示怎么回事
  • 验证码拖不动滑块,验证码滑不动怎么办呀,为什么验证码滑块滑不动
  • 留言与评论(共有 条评论)
       
    验证码: