久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 2873|回復: 0
打印 上一主題 下一主題
收起左側

商城開發筆記-15-短信驗證碼SDK使用以及用戶注冊

[復制鏈接]
跳轉到指定樓層
樓主
ID:109770 發表于 2016-3-22 17:32 | 只看該作者 回帖獎勵 |正序瀏覽 |閱讀模式
一、短信SDK驗證碼驗證流程簡介

       用戶填寫完用戶名以及密碼之后,就可以進行短信驗證。由于郵箱驗證比較繁瑣,一般都采用短信驗證。

       短信驗證的核心流程如下圖所示:

                              

       如果是自己去做短信驗證功能的話,最好按照以上流程走。一般為了節約經費,我們都是采用接入第三方的短信驗證SDK的方式來進行開發。
       MOB的短信驗證SDK為例,SDK已經封裝好以上流程,用戶只需要知道API接口就可以進行短信驗證。試用期的話,每天上限20條。


二、短信SDK接入
1、在短信SDK的網址注冊,然后注冊APP,獲取APPKey等信息。

2、按照官方文檔進行集成。需要注意的是,在Android Studio中是通過Module的信息進行Library依賴。另外,如果發生jar包沖突(重復)的話,最好多建一個globalLibrary,并且把該jar放進去,其余Module刪除,引用globalLibrary即可。


三、短信SDK使用
1、一般來說,需要進行SDK初始化,初始化中傳入APPKey等信息。如果有注銷的方法也要在onDestroy()方法中調用,以免內存泄漏。
SMSSDK.initSDK(.......);
2、根據官方文檔進行開發,每一套SDK的使用都不一樣,需要仔細閱讀文檔。遇到不懂的,除了文檔以外,官方Demo也可以參考獲取Copy


注意要點:

1、一般請求短信驗證碼需要傳國家代號以及電話作為參數,中國是86。電話號碼最好做一下合法判斷,比如長度、正則表達式匹配等。參考例子如下:
/**
* 檢查國家代號以及手機號碼是否正確
* @param phone
* @param code
*/
private void checkPhoneNum(String phone, String code) {
    if (code.startsWith("+")) {
        code = code.substring(1);
    }
    if (TextUtils.isEmpty(phone)) {
        ToastUtils.showToast(this, "請輸入手機號碼");
        return;
    }
    if (code == "86") {
        if (phone.length() != 11) {
            ToastUtils.showToast(this, "手機號碼長度不對");
            return;
        }
    }
    //正則匹配中國手機號碼
    String rule = "^1(3|5|7|8|4)\\d{9}";
    Pattern p = Pattern.compile(rule);
    Matcher m = p.matcher(phone);
    if (!m.matches()) {
        ToastUtils.showToast(this, "您輸入的手機號碼格式不正確");
        return;
    }
}

2、短信驗證碼請求間隔一般要大于60秒(具體SDK不同),否則服務器會返回“請求過于頻繁”。因此我們自定義按鈕計時器:

public class CountTimerView extendsCountDownTimer {
    public static final int TIME_COUNT = 61000;//時間防止從59s開始顯示(以倒計時60s為例子)
    private TextView btn;
    private int endStrRid;
    /**
     * 參數 millisInFuture      倒計時總時間(如60S120s等)
     * 參數 countDownInterval   漸變時間(每次倒計1s
     * 參數 btn   點擊的按鈕(因為ButtonTextView子類,為了通用我的參數設置為TextView
     * 參數 endStrRid   倒計時結束后,按鈕對應顯示的文字
     */
    public CountTimerView(long millisInFuture, longcountDownInterval, TextView btn, int endStrRid) {
        super(millisInFuture, countDownInterval);
        this.btn = btn;
        this.endStrRid = endStrRid;
    }
    /**
     * 參數上面有注釋
     */
    public CountTimerView(TextView btn, int endStrRid) {
        super(TIME_COUNT, 1000);
        this.btn = btn;
        this.endStrRid = endStrRid;
    }
    public CountTimerView(TextView btn) {
        super(TIME_COUNT, 1000);
        this.btn = btn;
        this.endStrRid = R.string.smssdk_resend_identify_code;
    }
    // 計時完畢時觸發
    @Override
    public void onFinish() {
        btn.setText(endStrRid);
        btn.setEnabled(true);
    }
    // 計時過程顯示
    @Override
    public void onTick(long millisUntilFinished) {
        btn.setEnabled(false);
        btn.setText(millisUntilFinished/ 1000 + " 秒后可重新發送");
    }
}



四、短信驗證完整流程

1、用戶數據用戶名以及密碼

2、判斷用戶名以及密碼的合法性

3、調用短信SDK獲取驗證碼的接口,獲取驗證碼

4、用戶收到,輸入驗證碼

5、獲取用戶輸入的驗證碼,調用短信SDK驗證碼驗證的接口,進行驗證

6、驗證通過以后,在回調中調用自己服務器的注冊API,進行注冊,注冊成功,銷毀本Activity,跳到主Activity


分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 欧美日韩国产在线播放 | 日本中文字幕在线视频 | 精品一区二区三区四区 | 日产精品久久久一区二区 | 欧美三级 欧美一级 | 日韩综合久久 | 日韩成人免费视频 | 精品国产一区二 | 伊人久久精品视频 | 免费成人深夜夜行网站 | 蜜臀久久99精品久久久久宅男 | 91新视频 | 色婷婷成人 | 亚洲自拍偷拍一区 | 国产黄色在线观看 | 欧美大片18 | 亚洲视频在线一区 | 国产精品久久久久久久免费看 | 亚洲午夜久久久 | av每日更新| 亚洲高清视频在线 | 黄色福利视频 | 亚洲综合影院 | 男女啪啪网站 | 亚洲精品欧美 | 久久国产精品99久久人人澡 | 国产成人午夜高潮毛片 | 亚洲免费在线 | 亚洲激情视频在线 | 久久综合久 | 中文在线永久免费观看 | 日日夜夜狠狠 | 四虎色| 在线性视频| 欧美三级在线视频 | 91女人18毛片水多国产 | 色婷婷香蕉在线一区二区 | www男人天堂| 黄色免费网站在线观看 | 午夜久久久久久久 | 精品国产毛片 |