一個可以便捷使用短信驗證的庫:SMSSDK
SMSSDK
對mob的短信驗證二次封裝。更簡潔的調用,maven直接倉庫依賴。
依賴
compile 'com.jude.smssdk_mob:smssdk_mob:1.0.2'
示例APP下載
使用方法
在你需要發送驗證碼的時候直接使用:
SMSManager.getInstance().sendMessage(this, "86","18888888888");
即可收到短信,然后使用
SMSManager.getInstance().verifyCode(this, "86", "18888888888", "4812", new Callback() { @Override public void success() { //驗證成功 } @Override public void error(Throwable error) { Toast.makeText(RegisterActivity.this, "驗證碼錯誤", Toast.LENGTH_SHORT).show(); } });
2行代碼即完成短信驗證。
重發與等待時間
因為短信驗證不能過于頻繁。所以默認有60秒的等待時間。用下面代碼注冊可以收到通知并更新UI。
SMSManager.getInstance().registerTimeListener(new TimeListener() { @Override public void onLastTimeNotify(int lastSecond) { //剩余時間通知 } @Override public void onAbleNotify(boolean valuable) { //當前能否發短信的通知 } }); //注意解除通知避免內存泄露 SMSManager.getInstance().unRegisterTimeListener(this);
具體用法可以參考demo。可以使用SMSManager.getInstance().setDefaultDelay(60)來設置最短時間。
使用自己的APPKEY
在AndroidManifest的application節點下增加
<meta-data android:name="SMS_MOB_APPKEY" android:value="xxxxxxx" /> <meta-data android:name="SMS_MOB_APPSECRET" android:value="xxxxxxx" />
填上自己的在mob創建的應用的數App Key 與 App Secret即可。
如果是使用服務器驗證也沒問題。我也推薦使用這種方式驗證,更加安全。發送驗證碼過后就不需其他處理,讓服務器去驗證。
本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!