Android中如何实现短信验证服务
发表于:2024-09-22 作者:千家信息网编辑
千家信息网最后更新 2024年09月22日,今天小编给大家分享一下Android中如何实现短信验证服务的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我
千家信息网最后更新 2024年09月22日Android中如何实现短信验证服务
今天小编给大家分享一下Android中如何实现短信验证服务的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。
具体代码如下
package com.skiers.demo_learn;import android.os.Bundle;import android.os.Handler;import android.os.Looper;import android.os.Message;import android.view.View;import android.widget.EditText;import android.widget.TextView;import com.mob.MobSDK;import androidx.annotation.Nullable;import androidx.appcompat.app.AppCompatActivity;import cn.smssdk.EventHandler;import cn.smssdk.SMSSDK;public class ThridActivity extends AppCompatActivity { EditText editText; TextView textView; EditText editText1; Handler handler; EventHandler eventHandler = null; @Override protected void onCreate(@Nullable Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_third); initView(); initEvent(); } private void initView() { MobSDK.init(this); editText = findViewById(R.id.editText); textView = findViewById(R.id.textView6); editText1 = findViewById(R.id.editText1); SMSSDK.setAskPermisionOnReadContact(false); eventHandler = new EventHandler() { public void beforeEvent(int var1, Object var2) { System.out.println("beforeEvent + ================================="); System.out.println(var1); System.out.println(var2); } public void afterEvent(int event, int result, Object data) { System.out.println("afterEvent + ================================="); // afterEvent会在子线程被调用,因此如果后续有UI相关操作,需要将数据发送到UI线程 Message msg = new Message(); msg.arg1 = event; msg.arg2 = result; msg.obj = data; getHandler().sendMessage(msg); System.out.println("afterEventEND + ================================="); System.out.println(data); } public void onRegister() { System.out.println("onRegister + ================================="); } public void onUnregister() { System.out.println("onUnregister + ================================="); } }; // 注册一个事件回调,用于处理SMSSDK接口请求的结果 SMSSDK.registerEventHandler(eventHandler); } private void initEvent() { // 请求验证码 findViewById(R.id.button).setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { getHandler().sendEmptyMessage(-1); String content = editText.getText().toString(); System.out.println(content + "----------------------------edit Text"); // 请求验证码,其中country表示国家代码,如"86";phone表示手机号码,如"13800138000" SMSSDK.getVerificationCode("86", content); } }); // 提交验证码 findViewById(R.id.button1).setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { String content = editText1.getText().toString(); System.out.println(content + "----------------------------edit Text"); // 提交验证码,其中的code表示验证码,如"1357" SMSSDK.submitVerificationCode("86", "18079919252", content); } }); } //处理数据 验证码,手机号 ---------主线程 ----可以Handler跟新视图,数据处理类 private Handler getHandler() { if (handler == null) { handler = new Handler(Looper.getMainLooper(), new Handler.Callback() { @Override public boolean handleMessage(Message msg) { int event = msg.arg1; int result = msg.arg2; Object data = msg.obj; if (event == SMSSDK.EVENT_GET_VERIFICATION_CODE) { if (result == SMSSDK.RESULT_COMPLETE) { System.out.println("验证码已发送,注意查收-----------------=================================="); // TODO 处理成功得到验证码的结果 // 请注意,此时只是完成了发送验证码的请求,验证码短信还需要几秒钟之后才送达 } else { System.out.println("验证码发送失败-----------------=================================="); // TODO 处理错误的结果 ((Throwable) data).printStackTrace(); } } else if (event == SMSSDK.EVENT_SUBMIT_VERIFICATION_CODE) { if (result == SMSSDK.RESULT_COMPLETE) { System.out.println("验证码通过验证-----------------=================================="); // TODO 处理验证码验证通过的结果 } else { System.out.println("验证码未通过验证-----------------=================================="); // TODO 处理错误的结果 ((Throwable) data).printStackTrace(); System.out.println("hello java =================================="); } } // TODO 其他接口的返回结果也类似,根据event判断当前数据属于哪个接口 return false; } }); } return handler; } // 使用完EventHandler需注销,否则可能出现内存泄漏 protected void onDestroy() { super.onDestroy(); SMSSDK.unregisterEventHandler(eventHandler); }}
以上就是"Android中如何实现短信验证服务"这篇文章的所有内容,感谢各位的阅读!相信大家阅读完这篇文章都有很大的收获,小编每天都会为大家更新不同的知识,如果还想学习更多的知识,请关注行业资讯频道。
验证
处理
结果
数据
知识
篇文章
短信
接口
线程
服务
代码
内容
手机
错误
不同
很大
成功
事件
内存
只是
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
崩坏切换服务器
深圳汽车软件开发电话
福建快搜时代网络技术
大众网网络安全
accdb是数据库文件吗
商业版本数据库最好的是
数据库集群如何实现
青岛软件开发驻场收费报价表
如何保护企业文档网络安全
天津服务器公司有哪些品牌云空间
服务器托管管理制度
db2jdbc连接数据库
启动服务器管理器只有一种方法
国外黑客分布式数据库
绝地求生分什么服务器
web安全与网络安全的区别
企业数据库安全设计原则
升腾服务器购买
网络安全信号是什么意思
项目网络安全审核
北京网络卫星授时服务器虚拟主机
软件开发工期和工作量之间关系
软件开发和测试哪个前景好
南通富士通软件开发怎么样
服务器端口关管理
altas服务器
互联网金科技大学
说说你对数据库类型的理解
服务器芯片多少纳米的
安徽南陵服务器电话