likes
comments
collection
share

Android Studio使用Mob实现短信验证功能遇到的问题解决

作者站长头像
站长
· 阅读数 27

一、Mob短信验证

全球领先的数据智能科技平台-MobTech袤博解决

进行注册登入

Android Studio使用Mob实现短信验证功能遇到的问题解决

登入成功后,点击开发者服务中的短信验证,进入开发者平台

Android Studio使用Mob实现短信验证功能遇到的问题解决

Android Studio使用Mob实现短信验证功能遇到的问题解决

填好信息创建成功后显示下图,可以看到对应信息如下(注意记住AppKey和AppSecretKey)

Android Studio使用Mob实现短信验证功能遇到的问题解决

Android Studio使用Mob实现短信验证功能遇到的问题解决

回到首页,点击开发者服务中的SDK下载

Android Studio使用Mob实现短信验证功能遇到的问题解决

勾选需要下载的短信验证功能,点击下载后出现下图中的信息,根据步骤对Android Studio添加依赖

Android Studio使用Mob实现短信验证功能遇到的问题解决

二、Android Studio

主要对这几个文件进行修改

Android Studio使用Mob实现短信验证功能遇到的问题解决

1.Build.gradie(Project)

Android Studio使用Mob实现短信验证功能遇到的问题解决

repositories {
 
        // 1.添加MobSDK Maven地址
        maven {
            url "https://mvn.mob.com/android"
        }
    }
    dependencies {
            // 注册MobSDK
            classpath "com.mob.sdk:MobSDK:+"
    }

2.Build.gradle(app)

Android Studio使用Mob实现短信验证功能遇到的问题解决

Android Studio使用Mob实现短信验证功能遇到的问题解决

plugins {
   
    id 'com.mob.sdk'
}
 
MobSDK {
    appKey "自己的appKey"
    appSecret "自己的appSecret"
    SMSSDK {}
}
 
dependencies {
 
//加入以下
    implementation 'io.github.bmob:android-sdk:3.8.13'
    implementation 'io.reactivex.rxjava2:rxjava:2.2.8'
    implementation 'io.reactivex.rxjava2:rxandroid:2.1.1'
    implementation 'com.squareup.okhttp3:okhttp:4.8.1'
    implementation 'com.squareup.okio:okio:2.2.2'
    implementation 'com.google.code.gson:gson:2.8.5'
}

3.gradle.properties

Android Studio使用Mob实现短信验证功能遇到的问题解决

android.enableJetifier=true
MobSDK.spEdition=FP

4.settings.gradle

Android Studio使用Mob实现短信验证功能遇到的问题解决

dependencyResolutionManagement {
    //repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS)
    repositoriesMode.set(RepositoriesMode.PREFER_SETTINGS)
    repositories {
        google()
        mavenCentral()
        maven { allowInsecureProtocol = true  //加这个是因为mob会被判定为不安全的协议而无法引入
            url "http://mvn.mob.com/android"}
    }
}

运行后出现以下结果表明引入成功

Android Studio使用Mob实现短信验证功能遇到的问题解决

添加需要的用户权限

Android Studio使用Mob实现短信验证功能遇到的问题解决

<uses-permission android:name="android.permission.READ_CONTACTS" />
    <uses-permission android:name="android.permission.READ_PHONE_STATE" />
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
    <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
    <uses-permission android:name="android.permission.INTERNET" />
    <uses-permission android:name="android.permission.RECEIVE_SMS" />
    <uses-permission android:name="android.permission.GET_TASKS" />
    <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" /> 
    <!-- 保持CPU 运转,屏幕和键盘灯有可能是关闭的,用于文件上传和下载 -->
    <uses-permission android:name="android.permission.WAKE_LOCK" />

三、一些零碎的问题

如果前面没引入成功就可能是这里出了问题

在开发者平台中找到应用信息里点击添加新包名,

Android Studio使用Mob实现短信验证功能遇到的问题解决

Android Studio使用Mob实现短信验证功能遇到的问题解决

1.包名

Android Manifest里上方可见

Android Studio使用Mob实现短信验证功能遇到的问题解决

2.MD5签名

打开Android Studio找到最右边工具栏上的Gradle,打开,然后依次打开app,android,signingReport,然后双击signingReport,等待它运行结束后就可以在下方控制台看见

Android Studio使用Mob实现短信验证功能遇到的问题解决

Android Studio使用Mob实现短信验证功能遇到的问题解决

(1)有一些小伙伴会发现自己的Gradle里好像没有Tasks选项,让它出现:

File->Settings->Experimental->取消勾选”Do not build Gradle task list during Gradle sync“

Android Studio使用Mob实现短信验证功能遇到的问题解决

然后file->Sync Project with Gradle Files,就可以了,按上面的步骤就可以看到我们的MD5签名

Android Studio使用Mob实现短信验证功能遇到的问题解决

(2)填写MD5签名的时候,需要注意格式:英文大写全部改小写,把冒号们都去掉!

(3)前面我们点了signingReport这个出现了MD5签名后,可能会出现一个小问题,点了运行,但程序没有运行起来,一直都是控制台出现MD5,其实需要找到下方图片中的位置点击一下app,再运行就可以成功解决。

Android Studio使用Mob实现短信验证功能遇到的问题解决