Android如何集成极光短信验证

先借助Android studio工具新建一个新的空项目。

步骤一(获取appkey)

1.在极光官网平台上新建短信应用(根据要求包名和应用名称填写好)

2.获取得到Jpush_AppKey

步骤二 (导入第三方库和so文件)

1.用Android studio打开应用

2.切换应用状态Android为Project状态

3.在libs文件夹下把对应的jar文件拷入  然后as libraries

步骤三(初始化以及调用)

1.新建Application初始化

public class MyApp extends Application {
  @Override
  public void onCreate() {
    super.onCreate();
    SMSSDK.getInstance().setDebugMode(true);
    SMSSDK.getInstance().initSdk(this);
  }
}

2.在activity中调用

public class MainActivity extends BaseActivity {
  EditText edit_name;
  EditText edit_pwd;
  EditText sms;
  String name;
  String pwd;
  Button get_sms;
  Button btn_login;
  private Handler handler = new Handler() {
    @Override
    public void handleMessage(Message msg) {
      super.handleMessage(msg);
      switch (msg.what) {
        case 1:
          Toast.makeText(MainActivity.this, msg.obj.toString(), Toast.LENGTH_SHORT).show();
          break;
        case 2:
          Toast.makeText(MainActivity.this, msg.obj.toString(), Toast.LENGTH_SHORT).show();
          break;
        case 3:
          Toast.makeText(MainActivity.this, msg.obj.toString(), Toast.LENGTH_SHORT).show();
          break;
        case 4:
          Toast.makeText(MainActivity.this, msg.obj.toString(), Toast.LENGTH_SHORT).show();
          break;
      }
    }
  }; 

  @Override
  protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    init();
  } 

  private void init() {
    edit_name = (EditText) findViewById(R.id.edit_name);
    edit_pwd = (EditText) findViewById(R.id.edit_pwd);
    sms = (EditText) findViewById(R.id.sms);
    get_sms = (Button) findViewById(R.id.get_sms);
    btn_login = (Button) findViewById(R.id.btn_login);
    get_sms.setOnClickListener(new GetSmsClickListener());
    btn_login.setOnClickListener(new LoginClickListener());
  } 

  public class GetSmsClickListener implements View.OnClickListener { 

    @Override
    public void onClick(View view) {
      name = edit_name.getText().toString().trim();
      pwd = edit_pwd.getText().toString().trim();
      if (name.equals("")) {
        edit_name.requestFocus();
      } else if (pwd.equals("")) {
        edit_pwd.requestFocus();
      } else {
        new Thread(new Runnable() {
          @Override
          public void run() {
            try {
              GetSmsCode(name, pwd);
            } catch (Exception ex) {
              ex.printStackTrace();
            }
          }
        }).start();
      }
    }
  } 

  private void GetSmsCode(String name, String pwd) { 

      GetCode(this.name, this.pwd, new GetCodeListener() {
        @Override
        public void getCodeSuccess(String s) {
          Message msg = Message.obtain();
          msg.obj = s;
          msg.what = 1;
          handler.sendMessage(msg);
        } 

        @Override
        public void getCodeFail(String s) {
          Message msg = Message.obtain();
          msg.obj = s;
          msg.what = 2;
          handler.sendMessage(msg);
        }
      });
  } 

  public class LoginClickListener implements View.OnClickListener { 

    @Override
    public void onClick(View view) {
      final String code = sms.getText().toString().trim();
      name = edit_name.getText().toString().trim();
      pwd = edit_pwd.getText().toString().trim();
      if (name.equals("")) {
        edit_name.requestFocus();
      } else if (pwd.equals("")) {
        edit_pwd.requestFocus();
      } else if (code.equals("")) {
        sms.requestFocus();
      } else {
        new Thread(new Runnable() {
          @Override
          public void run() {
            try {
              CheckSmsCode(name, pwd, code);
            } catch (Exception ex) {
              ex.printStackTrace();
            }
          }
        }).start();
      }
    }
  }
  private void CheckSmsCode(String name, String pwd, String code) {
      CheckCode(this.name, this.pwd, code, new CheckCodeListener() {
        @Override
        public void checkCodeSuccess(String s) {
          Message msg = Message.obtain();
          msg.obj = s;
          msg.what = 3;
          handler.sendMessage(msg);
        } 

        @Override
        public void checkCodeFail(String s) {
          Message msg = Message.obtain();
          msg.obj = s;
          msg.what = 4;
          handler.sendMessage(msg);
        }
      }); 

  } 

}

步骤四(填写配置文件)

1.配置应用权限

<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="android.permission.READ_PHONE_STATE"/>
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>

2.配置meta (appkey 从平台上新建的对应应用中来)

<meta-data android:name="JPUSH_APPKEY" android:value="You JPUSH_APPKEY"/>

步骤五(调试)

1.点击获取密码按钮获取短信信息

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。

(0)

相关推荐

  • Android短信验证码(用的Mob短信验证)

    Android短信验证码功能,供大家参考,具体内容如下 1.参考资料 Mob网站:http://www.mob.com/ Mob在Github上的例子:https://github.com/MobClub/SMSSDK-for-Android 教程:Mob短信验证的具体使用 教程的源代码:  http://git.oschina.net/lizhanqi/MobSMSDemo Dialog教程:Android Dialog对话框 定时器教程:Android 实现定时器的四种方式 2.前期准备 (

  • Android获取短信验证码的实现方法

    先给大家展示下效果图,如果感觉不错,请参考实现思路详解 Android开发中关于短息验证码的设计层出不穷,越来越多的应用为了更好的提高软件的安全性,开始使用通过服务器向用户发送验证码的方式,来保护用户个人信息的安全性.无论是用户注册时的信息验证还是当用户发出找回密码请求时的短信验证,他们的工作原理大致上是一致的,因为项目的需要研究了一下关于这方面的知识,本篇我将带领大家一起实现这一当下流行的设计方案. 众所周知,短信验证需要服务器端生成一个验证码,然后发送到用户输入的手机上,这个过程需要服务器主

  • Android利用CursorLoader实现短信验证码自动填写

    概述 Android上实现短信验证码自动填写,常用的有两种方式.一种是利用BroadCastReceiver,还有一种是监听手机上短信数据库的变化.利用BroadCastReceiver来实现会在一些情况下无效,最常见的就是手机上安装了具有垃圾短信拦截功能的软件的情况下,短信验证码自动填写无效.所以,现在一般会选用监听数据库内容变化的方式来实现短信验证码自动填写. 网上对于利用监听数据库内容变化来实现短信验证码自动填写的文章也很多,主要分为一下步骤: 1. 继承ContentObserver实现

  • Android 短信验证码自动填写

    Android 短信验证码自动填写 1.自定义Observer监听短信数据库变化(注意添加短信权限) import android.app.Activity; import android.content.ContentResolver; import android.database.ContentObserver; import android.database.Cursor; import android.net.Uri; import android.os.Handler; import

  • Android实现发送短信验证码倒计时功能示例

    一.简介: 开发中在用户注册或找回密码之类的功能,经常会遇到获取短信验证码,获取验证码后需要等待1分钟倒计时,这段时间是不能再次发送短信请求的. 效果图: 二.实现步骤: 1.一个关键类:CountDownTimer(Android系统自带的倒计时功能类) public class CountDownTimerUtils extends CountDownTimer { private TextView mTextView; //显示倒计时的文字 /** * @param textView Th

  • Android中用Bmob实现短信验证码功能的方法详解

    这篇文章主要介绍发送验证码和校验验证码的功能,用到一个第三方平台Bmob,那Bmob是什么呢?Bmob可以开发一个云存储的移动应用软件,他提供了大量的标准的API接口,根据需要接入相关服务,开发者可以更加专注于应用的开发,让产品交付更快速,验证码功能就是其中一个. 一.跟其他第三方一样,我们开发之前要做一些准备工作. 1.首先,去官网注册一个帐号:http://www.bmob.cn/: 2.然后就可以创建应用了:具体怎么做Bmob说得很清楚了(官方操作介绍),如果你不想看,我简单说一下:点击右

  • Android使用第三方服务器Bmob实现发送短信验证码

    调用Bmob第三方服务器实现短信验证的功能,大致思路如下: 随机产生6位数字,然后调用Bmob的请求短发函数发送者六位数到服务器,然后服务器给指定手机发送这6位验证码,然后感觉用户输入的数字进行判断,如果输入的和发送的相等,则验证成功. 第一步.请求验证码: SimpleDateFormat format =new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); String sendTime = format.format(new Date());

  • Android自动填充短信验证码功能(demo)

    项目需求: Android开发中用户登录往会用到短信验证的功能,如果让用户先查看短信,然后再回到界面填写验证码,用户体验不是很好,有时就需要实现验证码的自动填写功能. 做法: 我以前的做法是先创建一个广播接收器,接受短信变化的广播,收到广播时,再把验证码提取出来. 那时有用户测试反馈他的手机安装了其他一些短信应用或者手机本身限制了权限的情况下,这种方式可能起不了作用,即使把优先级设高,也不能保证不会被别的应用抢先. 以前用户卸载掉第三方软件后,就没再追究了. 现在发现可以通过监听短信数据库的方式

  • Android如何集成极光短信验证

    先借助Android studio工具新建一个新的空项目. 步骤一(获取appkey) 1.在极光官网平台上新建短信应用(根据要求包名和应用名称填写好) 2.获取得到Jpush_AppKey 步骤二 (导入第三方库和so文件) 1.用Android studio打开应用 2.切换应用状态Android为Project状态 3.在libs文件夹下把对应的jar文件拷入  然后as libraries 步骤三(初始化以及调用) 1.新建Application初始化 public class MyAp

  • Android使用CountDownTimer模拟短信验证倒计时

    本文为大家分享了CountDownTimer模拟短信验证倒计时的具体代码,供大家参考,具体内容如下 内容:介绍倒计时CountDownTimer的基本使用方法.模拟短信验证 步骤: 1.继承CountDownTimer,重写onTick().onFinish() 2.代码中new出CountDownTimer子类,传好参数,调用start()执行 代码如下: <?xml version="1.0" encoding="utf-8"?> <Relat

  • Android开发工程中集成mob短信验证码功能的方法

    一.前言 现在的app基本上都需要用到短信功能,注册时或者有消息通知时需要给用户发送一条短信,但是对于个人开发者来说,去买第三方的短信服务实在是有点奢侈,很好的是mob为我们提供了免费的短信验证码服务功能,我不是打广告,的确觉得这项服务很不错.那么下面就简单讲一下如何在自己的工程里集成mob的短信功能,其实整个流程并不复杂,只是个人觉得mob的官方文档有点小乱,官方Demo也有点小复杂,同时有一些细节地方容易被忽视,也会导致一些问题. PS:太喜欢mob的logo了. 二.实现过程 本篇只涉及A

  • Android简单的短信验证功能的实现代码

    相信有很多朋友在做三方登陆的时候会加入短信验证的功能,最近刚好被分配安排实现这一需求,本人新手一枚,特地去网上搜了资料,目前用的比较多的大汉.云通讯还有MOB的smssdk,对比之下,最终选择了完全免费的MOB产品试试手,下面就是我在使用sdk过程中一些心得,希望看到的大神给点建议,喜欢的给个小心心就好. 首先我上网百度了下Mob的官网(http://www.mob.com/)作为第一次使用习惯性的先打开文档介绍,关于使用方法这里介绍的算是比较详细的,我这里也不做赘述了,整个文档浏览了一遍,介绍

  • Android使用MobSDK短信验证

    短信注册和短信验证已经是家常便饭了,所以当然要学习如何使用SDK啦 MobSDK可以免费发短信,当然就用它啦 http://www.mob.com 1.首先下载sdk 2.在项目新建一个叫lib的文件夹把4个东西放进去 3.在app的build.gradule添加如下代码 repositories{ flatDir{ dirs 'lib' //就是你放aar的目录地址 } } dependencies { //....... //其他依赖包 compile name: 'SMSSDK-2.1.0

  • Android实现短信验证功能的代码

    在我们现在开发APP过程中,当用户注册时,短信验证是必不可少的操作,这里我们就是用一个免费的第三方短信验证SDK-MOP 首先看下效果图 获取AppKey和AppSecret 首先进入官网,登录(没有帐号的自己去注册一个).鼠标移动到右侧头像处,点击进入后台. 官网首页 选择SecurityCodeSDK. 选择短信SDK 进入后台页面后,点击添加按钮.填写应用名称(这个可以随便写).选择Android后,点击添加即可. 添加应用 添加成功后,就会进入以下界面,在这里就可以看到刚刚申请成功的Ap

  • Android实现页面短信验证功能

    本文实例为大家分享了Android实现页面短信验证功能的具体代码,供大家参考,具体内容如下 目标效果: 上一篇博文介绍的是使用SDK中自带的验证页面,需要进行多次跳转,并且项目需要添加两个框架,多有不便,这个例子简化了短信验证的代码,但是不足的是功能不如原本那个完善. 1.新建项目,找到上一次下载的SDK文件中包含的SMSSDK项目,复制lib目录下的三个jar包,res目录下的raw文件夹和values目录下的两个xml文件到本项目. 2.activity_main.xml页面设置布局. ac

  • 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 androi

  • Android实现短信验证功能

    本文实例为大家分享了Android实现短信验证功能的具体代码,供大家参考,具体内容如下 目标效果:   点金绑定手机号,输入手机号点击下一步,会收到一条验证码,验证码输入正确则提示验证成功,如果已经验证成功再次验证时,提示已经验证. 1.进入mob.com,注册账号,然后进入控制台,点击中间进入短信验证区. 2.点击左上角创建应用. 3.创建成功会显示应用的密钥,在初始化SDK中使用. 4.然后下载SDK. 5.下载后解压,SMSSDK文件夹中有如图两个项目,打开eclipse以Android项

随机推荐