¿Cómo iniciar sesión con el número de teléfono móvil en Android (la última versión de 2020 plataforma Mob ultra detallada + SMSSDK)?


Aunque la plataforma mob puede iniciar sesión con un código de verificación de teléfono móvil, existe un inconveniente 每天只能发送10条验证码。
建议仔细观看每一个步骤,如果一个步骤没处理好,可能就会让你的这个功能无法实现。相信我一定可以成功的。

Si desea realizar la función de inserción móvil a través de Android, puede leer este artículo. Android le enseña cómo realizar fácilmente la función de inserción móvil y le enseña paso a paso Mob + MobPush para realizar la función de inserción.

El primer paso: registrar la cuenta de la plataforma mob

Debido a que ya me he registrado en la plataforma mob y no hay un número de teléfono móvil adicional, no daré más detalles. El registro es relativamente sencillo. El enlace a la plataforma mob se adjunta a continuación:
enlace de la plataforma mob : https://www.mob.com/

Paso 2: Configure el entorno SMSSDK en la plataforma mob.

1. Haga clic en el centro de productos en el círculo rojo de la siguiente figura.

Inserte la descripción de la imagen aquí

2. Haga clic para entrar ahora.

Inserte la descripción de la imagen aquí

3. Haga clic en Crear aplicación.

Inserte la descripción de la imagen aquí

4. Acepta el servicio de privacidad.

Inserte la descripción de la imagen aquí

5. Cree una aplicación.

Recuerde que la imagen está configurada en 128px*128px
Inserte la descripción de la imagen aquí
Si no sabe cómo 设置图片大小, puede buscar en el editor FastStone en Internet. No sé dónde colocar su paquete de instalación. Puede encontrarlo en Internet, pero el software de dibujo que viene con la ventana parece poder configurarlo. El tamaño (no estoy muy seguro). No digas tonterías, ve al grano.
Inserte la descripción de la imagen aquí

6. Haga clic en el círculo rojo en la figura siguiente para acceder a la interfaz.

Inserte la descripción de la imagen aquí

7. Seleccione SMSSDK.

Elige como se muestra en la SMSSDKimagen (Segunda prueba, no sé si hay que agregarlo, solía agregarlo, pero no tiene efecto, agregarlo es mejor que no agregarlo, de todos modos, no interfiere).
Inserte la descripción de la imagen aquí

8. Obtenga su App Keysuma App Secret.

Se recomienda utilizar el suyo propio, porque solo se pueden enviar 10 mensajes por cada aplicación creada.
Inserte la descripción de la imagen aquí

9. Haga clic en SDK para descargar.

como muestra la imagen
Inserte la descripción de la imagen aquí

10. Descarga SMSSDK.

Los pasos se muestran en la figura.
Inserte la descripción de la imagen aquí
La descarga aquí no es a través de la descarga manual, sino a través de la descarga de código, muy simple.
Inserte la descripción de la imagen aquí

Paso 3: agregue el código SMSSDK a Android

1. Cree un nuevo proyecto.

Inserte la descripción de la imagen aquí

2. Agregue permisos en AndroidManifest.

Como se muestra en la figura: el
Inserte la descripción de la imagen aquí
código de permiso es el siguiente:

<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.READ_SMS" />
<uses-permission android:name="android.permission.GET_TASKS" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />

3. Agregue el código en el builder.grale del proyecto.

Como se muestra en la figura, el
Inserte la descripción de la imagen aquí
código es el siguiente:

classpath "com.mob.sdk:MobSDK:2018.0319.1724"
maven {
    
     url 'https://jitpack.io' }

4. Agregue código a builder.gradle en Moudule

记得修改为你自己的apppKey和appSecret
Si lo tuyo es android studio4.0,4.1agregar el siguiente código:
Inserte la descripción de la imagen aquí

Si está en otra versión, simplemente agregue el formato de la imagen a continuación, simplemente modifíquelo paraapply plugin:'com.mob.sdk'
Inserte la descripción de la imagen aquí

El código es el siguiente, seleccione el código según su versión:
android studio4.0.4.1版本

id 'com.mob.sdk'

其他版本

apply plugin:'com.mob.sdk'

El código de la versión de MobSDK es el siguiente, recuerde modificarlo al suyo appKey和appSecret, de lo contrario puede que no sea suficiente:

MobSDK {
    
    
    appKey "31d18b327d099"     //修改为你自己的appKey
    appSecret "5e6a2e16f58f9c1e374acf77abb70b70"    //修改为你自己的appSecret
    SMSSDK {
    
    }
}

5. Escriba el archivo MainActivity.

El código principal es el siguiente:
Código principal de la actividad:

import android.content.Intent;
import android.os.Bundle;
import android.text.TextUtils;
import android.view.View;
import android.widget.EditText;
import android.widget.Toast;

import androidx.appcompat.app.AppCompatActivity;

import com.mob.MobSDK;

import org.json.JSONException;
import org.json.JSONObject;

import cn.smssdk.EventHandler;
import cn.smssdk.SMSSDK;

public class MainActivity extends AppCompatActivity {
    
    
    EventHandler handler;
    EditText editText;
    EditText editText1;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
    
    
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        MobSDK.init(this, "31d18b327d099","5e6a2e16f58f9c1e374acf77abb70b70");       //记得此处修改为你的AppKey和AppSecret
        editText=findViewById(R.id.yanzhengma);
        editText1=findViewById(R.id.phone);
        handler = new EventHandler(){
    
    
            @Override
            public void afterEvent(int event, int result, Object data) {
    
    
                if (result == SMSSDK.RESULT_COMPLETE){
    
    
                    //回调完成
                    if (event == SMSSDK.EVENT_SUBMIT_VERIFICATION_CODE) {
    
    
                        //提交验证码成功
                        runOnUiThread(new Runnable() {
    
    
                            @Override
                            public void run() {
    
    
                                Toast.makeText(MainActivity.this,"验证成功", Toast.LENGTH_SHORT).show();
                                Intent intent = new Intent(MainActivity.this,Main2Activity.class);
                                startActivity(intent);
                            }
                        });

                    }else if (event == SMSSDK.EVENT_GET_VERIFICATION_CODE){
    
    
                        //获取验证码成功
                        runOnUiThread(new Runnable() {
    
    
                            @Override
                            public void run() {
    
    
                                Toast.makeText(MainActivity.this,"验证码已发送", Toast.LENGTH_SHORT).show();
                            }
                        });
                    }else if (event == SMSSDK.EVENT_GET_SUPPORTED_COUNTRIES){
    
    
                    }
                }else{
    
    
                    ((Throwable)data).printStackTrace();
                    Throwable throwable = (Throwable) data;
                    try {
    
    
                        JSONObject obj = new JSONObject(throwable.getMessage());
                        final String des = obj.optString("detail");
                        if (!TextUtils.isEmpty(des)){
    
    
                            runOnUiThread(new Runnable() {
    
    
                                @Override
                                public void run() {
    
    
                                    Toast.makeText(MainActivity.this,"提交错误信息", Toast.LENGTH_SHORT).show();
                                }
                            });
                        }
                    } catch (JSONException e) {
    
    
                        e.printStackTrace();
                    }

                }
            }
        };

        SMSSDK.registerEventHandler(handler);
    }
    
    //提交验证
    public void tijiao(View view) {
    
    
        String number = editText.getText().toString();
        String phone=editText1.getText().toString();
        SMSSDK.submitVerificationCode("86",phone,number);
    }
    
    //点击发送验证码
    public void play(View view) {
    
    
        //获取验证码
        String phone=editText1.getText().toString();
        SMSSDK.getVerificationCode("86",phone);
    }
}

El código principal de xml:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:id="@+id/activity_main"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
    tools:context=".MainActivity">
    <EditText
        android:id="@+id/phone"
        android:inputType="numberPassword"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:hint="请输入手机号码"
        />
    <Button
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:text="发送短信验证码"
        android:onClick="play"
        />
    <EditText
        android:id="@+id/yanzhengma"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:hint="请输入手机验证码"
        />
    <Button
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:onClick="tijiao"
        android:text="提交"
        />
</LinearLayout>

Si cree que el código no es suficiente, adjuntaré todas las direcciones del proyecto de código:

La dirección csdn se establece en 0 puntos y se puede descargar libremente: https://download.csdn.net/download/qq_45137584/13737566

dirección de github:
algo de tiempo para pasar

Paso 4: observe el efecto del proyecto.

Porque para proteger la privacidad, la 手机号输入框configuro como contraseña. Pero no afectará nuestro efecto de visualización. Esta prueba se puede hacer aquí 手机模拟器上运行, solo ingrese el número de teléfono móvil 不一定要输入是你注册mob的那个手机号. El efecto es el siguiente:
Inserte la descripción de la imagen aquí
debido a que ingresé el número de teléfono, todos los códigos de verificación enviados no se envían al simulador de teléfono móvil y el simulador de teléfono móvil no tiene un número de teléfono móvil, por lo que a continuación se adjunta una captura de pantalla del teléfono local que recibe el código de verificación para verificar la autenticidad. .
Inserte la descripción de la imagen aquí
Enhorabuena, el efecto deseado se ha completado. Si encuentra algún problema, puede plantearlo, porque después de todo, no puedo considerar esta situación solo.
功能虽然简单,但是步骤并不少,只要细心肯定是可以实现的。
Si quieres saber cómo implementar la función push móvil, puedes leer este blog. ¿Android te enseña cómo implementar fácilmente la función push móvil y te enseña Mob + MobPush paso a paso para implementar la función push?

Supongo que te gusta

Origin blog.csdn.net/qq_45137584/article/details/111414308
Recomendado
Clasificación