安卓接入Mob短信验证模块

写在前面

首先我要吐槽一下福州的天气,连续下了一周的雨,感觉快要发霉了,真是无FUCK说。下雨天就是意志消沉,没有一点战斗力,啥都不想干。但是有一句话说的没错,DEADLINE就是第一生产力,数据库报告,操作系统报告,技术博客。。。不干活不行了。
好了吐槽完了,咋们进入正题,开始介绍接入Mob短信验证的流程

第一步:进入Mob官网进行注册并登录

安卓接入Mob短信验证模块_第1张图片

第二步:创建一个应用

安卓接入Mob短信验证模块_第2张图片

安卓接入Mob短信验证模块_第3张图片
  • 创建成功后会看到如下界面,然后点击添加产品,添加我们需要的短信验证模块(SMSSDK)即可


    安卓接入Mob短信验证模块_第4张图片

    安卓接入Mob短信验证模块_第5张图片

第三步:下载短信验证SDK,并且导入到你的项目

安卓接入Mob短信验证模块_第6张图片

安卓接入Mob短信验证模块_第7张图片
  • 下载完成后,打开压缩包,找到SMSSDK里边的libs目录,并将里边的jar包和aar文件复制到你项目的libs目录下面
    安卓接入Mob短信验证模块_第8张图片

    安卓接入Mob短信验证模块_第9张图片
  • 然后在gradle中添加以下代码,注意里边的文件名和版本和上面一张图里边的是对应的
  • 好了,到这里前期工作已经全部做完,现在可以开始进行编码实现了

第四步:编写代码

  • 首先看一下实现后的效果(第一次做动态图有点丑)


  • 初始化模块,这里需要输入后两个参数分别是App key和App secret,可以在mob管理后台查看


    安卓接入Mob短信验证模块_第10张图片

    安卓接入Mob短信验证模块_第11张图片
  • 编写handle处理结果


    安卓接入Mob短信验证模块_第12张图片
  • 点击事件,这里要注意86代表中国


    安卓接入Mob短信验证模块_第13张图片
  • 以上是主要步骤,接下来看完整代码
package bbh.fzu.com.picture.Activity;
import android.os.Bundle;
import android.os.Handler;
import android.os.Message;
import android.support.annotation.Nullable;
import android.support.v7.app.AppCompatActivity;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;
import bbh.fzu.com.picture.R;
import cn.smssdk.EventHandler;
import cn.smssdk.SMSSDK;
public class MessageActivity extends AppCompatActivity implements View.OnClickListener{
    private EditText phone;
    private EditText code;
    private Button send;
    private Button verify;

    private Handler hander = new Handler(){
        @Override
        public void handleMessage(Message msg) {
            int event = msg.arg1;
            int result = msg.arg2;
            Object data = msg.obj;
            if (result == SMSSDK.RESULT_COMPLETE){
                if (event == SMSSDK.EVENT_SUBMIT_VERIFICATION_CODE){
                    //right
                    Toast.makeText(MessageActivity.this,"验证成功",Toast.LENGTH_SHORT).show();
                }
            }else {
                Toast.makeText(MessageActivity.this,"验证码错误",Toast.LENGTH_SHORT).show();
            }
        }
    };

    @Override
    protected void onCreate(@Nullable Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.message);

        inits();
        initSDK();
    }

    private void initSDK() {
        //初始化短信验证模块
        SMSSDK.initSDK(this,"1df128cbcbd61","40018dab2b1b42d0e68c63a8429d05e5");
        EventHandler eh = new EventHandler(){
            @Override
            public void afterEvent(int event, int result, Object data) {
                Message msg = new Message();
                msg.arg1 = event;
                msg.arg2 = result;
                msg.obj = data;
                hander.sendMessage(msg);
            }
        };

        SMSSDK.registerEventHandler(eh);
    }

    private void inits() {
        phone = (EditText) findViewById(R.id.message_phone);
        code = (EditText) findViewById(R.id.message_code);
        send = (Button) findViewById(R.id.message_send);
        verify = (Button) findViewById(R.id.message_verify);

        send.setOnClickListener(this);
        verify.setOnClickListener(this);
    }

    @Override
    public void onClick(View v) {
        switch (v.getId()){
            case R.id.message_send:
                String number = phone.getText().toString().trim();
                SMSSDK.getVerificationCode("86",number);
                Toast.makeText(this,"验证码已发送",Toast.LENGTH_SHORT).show();
                break;
            case R.id.message_verify:
                String vNumber = phone.getText().toString().trim();
                String vCode = code.getText().toString().trim();
                SMSSDK.submitVerificationCode("86",vNumber,vCode);
                Toast.makeText(this,"请等待验证",Toast.LENGTH_SHORT).show();
                break;
            default:
                break;
        }
    }
}

小结

通过上面几个步骤,你就可以轻松的将mob短信验证模块接入到你的应用之中了。还有一点值得注意的是利用mob可以很方便的实现短信验证功能,但是每天只有20条的限制,如果要提高至无限量则需要到mob后台提交完整的apk安装包。但是一般来说,20条对于开发阶段还是够用的。

最后:这是第一次用写文章,有很多不足之处,还请见谅。

你可能感兴趣的:(安卓接入Mob短信验证模块)