在上一篇博客中,简单实现了获取短信验证码的功能,那么在本文中,主要介绍短信SDK内置(无UI界面)的方法,对外的类主要有:SMSSDK和EventHandler

先看一波xml

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"xmlns:tools="http://schemas.android.com/tools"android:layout_width="match_parent"android:layout_height="match_parent"android:paddingBottom="@dimen/activity_vertical_margin"android:paddingLeft="@dimen/activity_horizontal_margin"android:paddingRight="@dimen/activity_horizontal_margin"android:paddingTop="@dimen/activity_vertical_margin"tools:context=".MainActivity"android:orientation="vertical"><LinearLayoutandroid:layout_width="match_parent"android:layout_height="wrap_content"android:orientation="horizontal"><EditTextandroid:id="@+id/ed1"android:layout_width="0dp"android:layout_height="wrap_content"android:layout_weight="2"android:hint="请输入手机号"/><Buttonandroid:id="@+id/btn_get"android:layout_width="0dp"android:layout_height="wrap_content"android:layout_weight="1"android:text="获取验证码"/></LinearLayout><EditTextandroid:id="@+id/ed2"android:layout_width="match_parent"android:layout_height="wrap_content"android:hint="请输入验证码"android:layout_marginTop="10dp"/><Buttonandroid:id="@+id/btn_login"android:layout_width="match_parent"android:layout_height="wrap_content"android:layout_marginTop="10dp"android:text="注册"/>
</LinearLayout>
配置权限等等就不再贴了,首先得到用户输入的值:
public void getNum() {phoneNumber = ed1.getText().toString().trim();code = ed2.getText().toString().trim();}
其次初始化接口:
<span style="font-size:14px;">public void regist() {EventHandler eh = new EventHandler() {@Overridepublic void afterEvent(int event, int result, Object data) {if (result == SMSSDK.RESULT_COMPLETE) {//回调完成if (event == SMSSDK.EVENT_SUBMIT_VERIFICATION_CODE) {//提交验证码成功runOnUiThread(new Runnable() {@Overridepublic void run() {Toast.makeText(MainActivity.this, "您已验证成功,请您订餐", Toast.LENGTH_SHORT).show();}});} else if (event == SMSSDK.EVENT_GET_VERIFICATION_CODE) {//获取验证码成功runOnUiThread(new Runnable() {@Overridepublic void run() {Toast.makeText(MainActivity.this, "已发送验证码,请查收", Toast.LENGTH_SHORT).show();}});} else if (event == SMSSDK.EVENT_GET_SUPPORTED_COUNTRIES) {//返回支持发送验证码的国家列表}} else {runOnUiThread(new Runnable() {@Overridepublic void run() {Toast.makeText(MainActivity.this, "操作失败,请重新获取验证码", Toast.LENGTH_SHORT).show();}});((Throwable) data).printStackTrace();}}};SMSSDK.registerEventHandler(eh); //注册短信回调}</span>
设置点击事件,判断用户输入的值是否为空或有误
<span style="font-size:14px;">public void onClick(View view) {getNum();switch (view.getId()) {case R.id.btn_get:regist();//调用注册短信发送的回调接口//判断是否为null或“”if (TextUtils.isEmpty(phoneNumber)) {Toast.makeText(MainActivity.this, "请输入合法的手机号", Toast.LENGTH_SHORT).show();} else {SMSSDK.getVerificationCode("86", phoneNumber);}break;case R.id.btn_login:regist();if (TextUtils.isEmpty(phoneNumber) && TextUtils.isEmpty(code)) {Toast.makeText(MainActivity.this, "请检验您输入的信息", Toast.LENGTH_SHORT).show();} else {SMSSDK.submitVerificationCode("86", phoneNumber, code);}break;}}</span>
getSupportedCountries()获取短信目前支持的国家列表,在监听中返回getVerificationCode(String country, String phone)
请求获取短信验证码,在监听中返回
submitVerificationCode(String country, String phone, String code)提交短信验证码,在监听中返回
现在可以运行自己的代码了,撒花~
												

手机获取短信验证码——自定义UI界面相关推荐

  1. 手机获取短信验证码登陆

    主要是后台代码实现, 可以登陆容联云通讯,https://www.yuntongxun.com/?ly=baidu-pz-p&qd=cpc&cp=ppc&xl=null& ...

  2. vue中获取短信验证码IOS手机问题

    vue使用中发现了一个问题,由于ios手机获取短信验证码后,验证码会直接显示在键盘上,点击键盘上的验证码即可给对应的input赋值,但是在项目开发中发现输入框的取值为空 经过排查是因为通过v-mode ...

  3. vue中获取短信验证码功能IOS手机问题

    vue使用中发现了一个问题,由于ios手机获取短信验证码后,验证码会直接显示在键盘上,点击键盘上的验证码即可给对应的input赋值,但是在项目开发中发现输入框的取值为空 经过排查是因为通过v-mode ...

  4. android+自定义发彩信,Android实现获取短信验证码的功能以及自定义GUI短信验证

    短信验证功能大家都很熟悉了.在很多地方都能见到,注册新用户或者短息验证支付等.短信验证利用短信验证码来注册会员,大大降低了非法注册,很大程度上提高了用户账户的安全性. 目前市面上已经有了很多提供短信验 ...

  5. android-短信验证功能,Android实现获取短信验证码的功能以及自定义GUI短信验证详解...

    <Android实现获取短信验证码的功能以及自定义GUI短信验证详解>由会员分享,可在线阅读,更多相关<Android实现获取短信验证码的功能以及自定义GUI短信验证详解(8页珍藏版 ...

  6. Jmeter-函数助手-随机函数的使用(模拟1000+个手机用户获取短信验证码)

    如何模拟1000个手机用户登录? 现在很多APP或者网站都需要使用手机号进行登录,那么使用手机号进行登录时,必然就需要"手机号+短信验证码"才可登录成功. 在实际测试过程中,测试人 ...

  7. iOS点击获取短信验证码按钮

    概述 iOS点击获取短信验证码按钮, 由于 Demo整体测试运行效果 , 整个修改密码界面都已展现, 并附送正则表达式及修改密码逻辑. 详细 代码下载:http://www.demodashi.com ...

  8. SpringBoot 实现手机发送短信验证码

    手机发送短信 内容 一.手机发送短信 1. 前端界面代码 2. UserInfoController 控制器 3. application.properties 配置类文件 4. 具体实现 总结 内容 ...

  9. 快速集成APP注册页面免费获取短信验证码功能

    前言: 最近这段时间都忙着优化自己的个人项目,好久没来总结分享了,今天就抽空跟大家分享一下快速集成APP注册页面免费获取短信验证码功能吧. 一.使用第三方短信SDK前期准备: 在这里我是使用了第三方免 ...

最新文章

  1. Xshell6连Linux
  2. centos安装zookeeper
  3. iMX6开发板-uboot-网络设置和测试
  4. javafx swing_JavaFX技巧9:请勿混用Swing / JavaFX
  5. Linux+Tomcat建站笔记(JDK,Mysql,Vsftpd,Iptables等配置)
  6. java.nio教程_Java NIO系列教程(三) Buffer
  7. 网络编程之OSI七层协议略析
  8. python3 format函数_【Python3 第三日】%和format格式化输出 函数
  9. 当心异步刷新后的脚本文件加载
  10. 理解vue中的父组件,子组件
  11. Java IO流学习总结(1)
  12. flask不运行主函数解决方法
  13. Stick ------ 剪枝神题
  14. matlab gui 滤波器,基于Matlab GUI的数字滤波器设计及其应用
  15. 建筑工程师的转行学计算机科学与技术的抉择
  16. 从头认识一遍“货到人”拣选
  17. iOS开发面试和底层学习视频整理合集
  18. 寒假实践之—大奖赛计分系统
  19. 上楼梯(df和dp解法)
  20. 帮Customer Architecture写的小脚本

热门文章

  1. 猎头职场:职场社交拒绝做尬聊的人
  2. 使用freemarker模板导出excel
  3. 几款模板引擎的性能对比
  4. 域名投资的基本功(四):什么是“硬通”?
  5. 小米手机2发布会直播贴(持续更新中)
  6. BEV图像处理对自动驾驶系统的性能优化
  7. Typora的读法与基本使用
  8. Java中的transient关键字
  9. 7-24 病毒变种 (10 分)解法超简单
  10. newifi mini 和 斐讯k1 的pandorabox 使用总结