前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Android短信验证码控件,Android中实现短信验证码自动填入

Android短信验证码控件,Android中实现短信验证码自动填入

作者头像
全栈程序员站长
发布2022-09-15 10:19:22
7.4K0
发布2022-09-15 10:19:22
举报
文章被收录于专栏:全栈程序员必看

大家好,又见面了,我是你们的朋友全栈君。

Android中实现短信验证码自动填入

由于目前的好多应用都有短信验证,短信验证码收到后,用户手动输入已经显得有麻烦,于是我写了这篇博文,希望能对大家有所帮助。

实现步骤:

1.写一个SmsBroadcastReceiver,在AndroidMainifirst.xml文件中注册:

/** * 配置广播接收者: * * 表示: * 设置此广播接收者的级别为最高 */

类代码:

public class SmsBroadcastReceiver extends BroadcastReceiver{private MessageListener mMessageListener; public SMSBroadcastReceiver() { super(); }@Overridepublic void onReceive(Context context, Intent intent) {Object [] pdus= (Object[]) intent.getExtras().get(“pdus”); for(Object pdu:pdus){ SmsMessage smsMessage=SmsMessage.createFromPdu((byte [])pdu); String sender=smsMessage.getDisplayOriginatingAddress(); String content=smsMessage.getMessageBody(); long date=smsMessage.getTimestampMillis(); Date timeDate=new Date(date); SimpleDateFormat simpleDateFormat=new SimpleDateFormat(“yyyy-MM-dd HH:mm:ss”); String time=simpleDateFormat.format(timeDate); System.out.println(“短信来自:”+sender+”短信内容:”+content+”短信时间:”+time); mMessageListener.OnReceived(content); //如果短信来自10690157263152,不再往下传递,一般此号码可以作为短信平台的号码。 if(“10690157263152″.equals(sender)){ System.out.println(” abort “); abortBroadcast(); } }}// 回调接口 public interface MessageListener { public void OnReceived(String message); } public void setOnReceivedMessageListener(MessageListener messageListener) { this.mMessageListener=messageListener; }}

在Activity使用的方法:

mSMSBroadcastReceiver=new SMSBroadcastReceiver(); mSMSBroadcastReceiver.setOnReceivedMessageListener(new MessageListener() { public void OnReceived(String message) { mTextView.setText(message); } });

总结:这三步搞定,很方便,让你的应用从此告别手动输入验证码的时代。

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/160035.html原文链接:https://javaforall.cn

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
短信
腾讯云短信(Short Message Service,SMS)可为广大企业级用户提供稳定可靠,安全合规的短信触达服务。用户可快速接入,调用 API / SDK 或者通过控制台即可发送,支持发送验证码、通知类短信和营销短信。国内验证短信秒级触达,99%到达率;国际/港澳台短信覆盖全球200+国家/地区,全球多服务站点,稳定可靠。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档