全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

Android 短信验证码自动填写

Android 短信验证码自动填写

1.自定义Observer监听短信数据库变化(注意添加短信权限)

import android.app.Activity;
import android.content.ContentResolver;
import android.database.ContentObserver;
import android.database.Cursor;
import android.net.Uri;
import android.os.Handler;
import android.text.TextUtils;

import java.util.regex.Matcher;
import java.util.regex.Pattern;

/**
 * Created by 001 on 17/3/22.
 */

public class SmsObserver extends ContentObserver {

  public static final String SMS_URI_INBOX = "content://sms/inbox";
  private Activity activity = null;
  private String smsContent = "";
  private SmsListener listener;

  public SmsObserver(Activity activity, Handler handler, SmsListener listener) {
    super(handler);
    this.activity = activity;
    this.listener = listener;
  }

  @Override
  public void onChange(boolean selfChange) {
    super.onChange(selfChange);
    Cursor cursor = null;
    // 读取收件箱中含有某关键词的短信
    ContentResolver contentResolver = activity.getContentResolver();
    cursor = contentResolver.query(Uri.parse(SMS_URI_INBOX), new String[] {
            "_id", "address", "body", "read" }, "body like ? and read=?",
        new String[] { "%关键词%", "0" }, "date desc");
    if (cursor != null) {
      cursor.moveToFirst();
      if (cursor.moveToFirst()) {
        String smsbody = cursor
            .getString(cursor.getColumnIndex("body"));
        String regEx = "[^0-9]";
        Pattern p = Pattern.compile(regEx);
        Matcher m = p.matcher(smsbody.toString());
        smsContent = m.replaceAll("").trim().toString();
        if (!TextUtils.isEmpty(smsContent)) {
          listener.onResult(smsContent);
        }

      }
    }
  }

  /*
   * 短信回调接口
   */
  public interface SmsListener {
    /**
     * 接受sms状态
     *
     * @Title: onResult
     */
    void onResult(String smsContent);
  }
}

2.使用:

SmsObserver smsObserver = new SmsObserver(this, new Handler(), new SmsObserver.SmsListener() {
      @Override
      public void onResult(String smsContent) {
 //根据需求写
 //如:editText.setText(smsContent);
      }    });this.getContentResolver().registerContentObserver(Uri.parse("content://sms/"), true, smsObserver);


感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!


# Android  # 短信验证码  # 验证码  # Android实现自动填充短信验证码  # Android开发工程中集成mob短信验证码功能的方法  # Android获取和读取短信验证码的实现方法  # Android实现短信验证码获取自动填写功能(详细版)  # Android开发中通过手机号+短信验证码登录的实例代码  # Android实现获取短信验证码并自动填写功能  # Android利用CursorLoader实现短信验证码自动填写  # Android实现短信验证码自动填写  # Android实现自动填写获取验证码功能  # Android短信验证码自动填写实现代码  # 关键词  # 收件箱  # 希望能  # 自定义  # 谢谢大家  # 回调  # 中含有  # regex  # util  # TextUtils  # Created  # Pattern  # Matcher  # SMS_URI_INBOX  # String  # sms  # private  # inbox  # final 


相关文章: 东莞专业制作网站的公司,东莞大学生网的网址是什么?  建站之星手机一键生成:多端自适应+小程序开发快速建站指南  如何自己制作一个网站链接,如何制作一个企业网站,建设网站的基本步骤有哪些?  如何快速建站并高效导出源代码?  广州美橙建站如何快速搭建多端合一网站?  建站之星与建站宝盒如何选择最佳方案?  如何快速生成专业多端适配建站电话?  如何快速搭建支持数据库操作的智能建站平台?  建站主机与虚拟主机有何区别?如何选择最优方案?  如何快速查询域名建站关键信息?  建站VPS能否同时实现高效与安全翻墙?  如何在Mac上搭建Golang开发环境_使用Homebrew安装和管理Go版本  如何高效利用200m空间完成建站?  营销式网站制作方案,销售哪个网站招聘效果最好?  浅析上传头像示例及其注意事项  广州网站制作的公司,现在专门做网站的公司有没有哪几家是比较好的,性价比高,模板也多的?  微信小程序制作网站有哪些,微信小程序需要做网站吗?  如何选择适合PHP云建站的开源框架?  如何快速搭建高效服务器建站系统?  开封网站制作公司,网络用语开封是什么意思?  南京网站制作费用,南京远驱官方网站?  网站代码制作软件有哪些,如何生成自己网站的代码?  建站之星×万网:智能建站系统+自助建站平台一键生成  如何在西部数码注册域名并快速搭建网站?  制作证书网站有哪些,全国城建培训中心证书查询官网?  微课制作网站有哪些,微课网怎么进?  品牌网站制作公司有哪些,买正品品牌一般去哪个网站买?  网站制作公司排行榜,抖音怎样做个人官方网站  免费制作统计图的网站有哪些,如何看待现如今年轻人买房难的情况?  制作网站的软件免费下载,免费制作app哪个平台好?  如何解决ASP生成WAP建站中文乱码问题?  如何用IIS7快速搭建并优化网站站点?  简历在线制作网站免费,免费下载个人简历的网站是哪些?  如何配置支付宝与微信支付功能?  如何高效搭建专业期货交易平台网站?  杭州银行网站设计制作流程,杭州银行怎么开通认证方式?  长沙做网站要多少钱,长沙国安网络怎么样?  如何在建站之星网店版论坛获取技术支持?  javascript中的try catch异常捕获机制用法分析  如何批量查询域名的建站时间记录?  如何通过西部数码建站助手快速创建专业网站?  已有域名和空间如何搭建网站?  常州自助建站工具推荐:低成本搭建与模板选择技巧  电商平台网站制作流程,电商网站如何制作?  香港服务器如何优化才能显著提升网站加载速度?  如何制作新型网站程序文件,新型止水鱼鳞网要拆除吗?  官网网站制作腾讯审核要多久,联想路由器newifi官网  建站主机默认首页配置指南:核心功能与访问路径优化  建站之星官网登录失败?如何快速解决?  已有域名和空间如何快速搭建网站? 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。