Android中如何實現(xiàn)短信驗證服務(wù)-創(chuàng)新互聯(lián)

今天小編給大家分享一下Android中如何實現(xiàn)短信驗證服務(wù)的相關(guān)知識點,內(nèi)容詳細,邏輯清晰,相信大部分人都還太了解這方面的知識,所以分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后有所收獲,下面我們一起來了解一下吧。

創(chuàng)新互聯(lián)公司一直在為企業(yè)提供服務(wù),多年的磨煉,使我們在創(chuàng)意設(shè)計,全網(wǎng)整合營銷推廣到技術(shù)研發(fā)擁有了開發(fā)經(jīng)驗。我們擅長傾聽企業(yè)需求,挖掘用戶對產(chǎn)品需求服務(wù)價值,為企業(yè)制作有用的創(chuàng)意設(shè)計體驗。核心團隊擁有超過十載以上行業(yè)經(jīng)驗,涵蓋創(chuàng)意,策化,開發(fā)等專業(yè)領(lǐng)域,公司涉及領(lǐng)域有基礎(chǔ)互聯(lián)網(wǎng)服務(wù)成都移動機房托管app開發(fā)定制、手機移動建站、網(wǎng)頁設(shè)計、網(wǎng)絡(luò)整合營銷。

具體代碼如下


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會在子線程被調(diào)用,因此如果后續(xù)有UI相關(guān)操作,需要將數(shù)據(jù)發(fā)送到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 + =================================");
      }

    };

    // 注冊一個事件回調(diào),用于處理SMSSDK接口請求的結(jié)果
    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);
      }
    });
  }


  //處理數(shù)據(jù) 驗證碼,手機號 ---------主線程 ----可以Handler跟新視圖,數(shù)據(jù)處理類
  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("驗證碼已發(fā)送,注意查收-----------------==================================");
              // TODO 處理成功得到驗證碼的結(jié)果
              // 請注意,此時只是完成了發(fā)送驗證碼的請求,驗證碼短信還需要幾秒鐘之后才送達
            } else {
              System.out.println("驗證碼發(fā)送失敗-----------------==================================");
              // TODO 處理錯誤的結(jié)果
              ((Throwable) data).printStackTrace();
            }
          } else if (event == SMSSDK.EVENT_SUBMIT_VERIFICATION_CODE) {
            if (result == SMSSDK.RESULT_COMPLETE) {
              System.out.println("驗證碼通過驗證-----------------==================================");
              // TODO 處理驗證碼驗證通過的結(jié)果
            } else {

              System.out.println("驗證碼未通過驗證-----------------==================================");
              // TODO 處理錯誤的結(jié)果
              ((Throwable) data).printStackTrace();
              System.out.println("hello java ==================================");
            }
          }
          // TODO 其他接口的返回結(jié)果也類似,根據(jù)event判斷當(dāng)前數(shù)據(jù)屬于哪個接口
          return false;
        }
      });
    }

    return handler;
  }


  // 使用完EventHandler需注銷,否則可能出現(xiàn)內(nèi)存泄漏
  protected void onDestroy() {
    super.onDestroy();
    SMSSDK.unregisterEventHandler(eventHandler);
  }

}

以上就是“Android中如何實現(xiàn)短信驗證服務(wù)”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家閱讀完這篇文章都有很大的收獲,小編每天都會為大家更新不同的知識,如果還想學(xué)習(xí)更多的知識,請關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。

分享名稱:Android中如何實現(xiàn)短信驗證服務(wù)-創(chuàng)新互聯(lián)
文章網(wǎng)址:http://bm7419.com/article40/ggeho.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供用戶體驗、全網(wǎng)營銷推廣、營銷型網(wǎng)站建設(shè)、做網(wǎng)站、企業(yè)建站、網(wǎng)站營銷

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

h5響應(yīng)式網(wǎng)站建設(shè)