La verificación instantánea de Facebook no está verificando el número de móvil a través de la aplicación de Facebook

Hola, estoy implementando la Facebook Instant Verification en mi aplicación. En mi aplicación, estoy comprobando el número de clientes móviles, para lo cual estoy enviando OTP para obtener esta verificada.

Quiero cambiar el enfoque como recientemente Facebook lanzó un concepto de Facebook Instant Verification que verifica el número de móvil sobre la base de cualquier número que haya configurado en su cuenta de Facebook .

Https://developers.facebook.com/blog/post/2016/12/20/introducing-instant-verification/

Https://developers.facebook.com/docs/accountkit/android

Https://developers.facebook.com/docs/accountkit/overview

He hecho lo que se dice en los artículos, pero como se escribe que cada vez que ingrese el mismo número que está configurado en su aplicación de Facebook, a continuación, kit de cuenta de Facebook verificará su número de móvil sobre la base de lo que está en su cuenta de facebook de lo contrario envía OTP a continuación, verificación.

Problema

En mi caso estoy entrando en el mismo número de teléfono móvil que está configurado en mi cuenta de Facebook y con la última aplicación de facebook, pero aún no verifica el número de móvil sobre la base de número de teléfono móvil configurado en la aplicación de Facebook, siempre envía OTP.

Como debe hacer la verificación sin OTP. No estoy seguro de lo que estoy perdiendo en mi código y configuración, ya que siempre hace la verificación con OTP.

Por favor apoya. Gracias por adelantado.

AndroidManifest.xml

 <uses-permission android:name="android.permission.RECEIVE_SMS" /> <uses-permission android:name="android.permission.READ_PHONE_STATE" /> <uses-permission android:name="android.permission.INTERNET" /> <application android:allowBackup="true" android:icon="@mipmap/ic_launcher" android:label="@string/app_name" android:supportsRtl="true" android:theme="@style/AppTheme"> <activity android:name=".MainActivity"> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> <meta-data android:name="com.facebook.accountkit.ApplicationName" android:value="@string/app_name" /> <meta-data android:name="com.facebook.sdk.ApplicationId" android:value="@string/FACEBOOK_APP_ID" /> <meta-data android:name="com.facebook.accountkit.ClientToken" android:value="@string/ACCOUNT_KIT_CLIENT_TOKEN" /> <activity android:name="com.facebook.accountkit.ui.AccountKitActivity"> <intent-filter> <action android:name="android.intent.action.VIEW" /> <category android:name="android.intent.category.DEFAULT" /> <category android:name="android.intent.category.BROWSABLE" /> <data android:scheme="@string/ak_login_protocol_scheme" /> </intent-filter> </activity> </application> 

Construir un gradiente

 apply plugin: 'com.android.application' android { compileSdkVersion 23 buildToolsVersion "23.0.1" defaultConfig { applicationId "spice.in.accountkitfacebookdemo" minSdkVersion 15 targetSdkVersion 23 versionCode 1 versionName "1.0" testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner" } buildTypes { release { minifyEnabled false proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' } } } repositories { jcenter() } dependencies { compile fileTree(dir: 'libs', include: ['*.jar']) androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', { exclude group: 'com.android.support', module: 'support-annotations' }) compile 'com.android.support:appcompat-v7:23.0.1' testCompile 'junit:junit:4.12' compile 'com.android.support:design:23.0.1' compile 'com.facebook.android:account-kit-sdk:4.+' compile 'com.google.android.gms:play-services:10.0.1' } 

Strings.xml

 <string name="app_name">AccountKitDemo</string> <string name="FACEBOOK_APP_ID">XXX</string> <string name="ACCOUNT_KIT_CLIENT_TOKEN">YYYY</string> <string name="ak_login_protocol_scheme">akXXX</string> 

MainActivity.java

 @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); AccountKit.initialize(getApplicationContext()); send = (Button) findViewById(R.id.send); send.setOnClickListener(this); } @Override public void onClick(View v) { onLoginPhone(); } public void onLoginPhone() { final Intent intent = new Intent(this, AccountKitActivity.class); AccountKitConfiguration.AccountKitConfigurationBuilder configurationBuilder = new AccountKitConfiguration.AccountKitConfigurationBuilder(LoginType.PHONE, AccountKitActivity.ResponseType.CODE); // or .ResponseType.TOKEN // ... perform additional configuration ... intent.putExtra(AccountKitActivity.ACCOUNT_KIT_ACTIVITY_CONFIGURATION, configurationBuilder.build()); startActivityForResult(intent, APP_REQUEST_CODE); } @Override protected void onActivityResult(final int requestCode, final int resultCode, final Intent data) { super.onActivityResult(requestCode, resultCode, data); if (requestCode == APP_REQUEST_CODE) { // confirm that this response matches your request AccountKitLoginResult loginResult = data.getParcelableExtra(AccountKitLoginResult.RESULT_KEY); String toastMessage; if (loginResult.getError() != null) { toastMessage = loginResult.getError().getErrorType().getMessage(); Toast.makeText(this, "Get Error " + loginResult.getError(), Toast.LENGTH_LONG).show(); } else if (loginResult.wasCancelled()) { toastMessage = "Login Cancelled"; } else { if (loginResult.getAccessToken() != null) { toastMessage = "Success:" + loginResult.getAccessToken().getAccountId(); } else { toastMessage = String.format( "Success:%s...", loginResult.getAuthorizationCode().substring(0, 10)); } Toast.makeText(this, "Successfully done", Toast.LENGTH_LONG).show(); } Toast.makeText(this, toastMessage, Toast.LENGTH_LONG).show(); } } 

Introduzca aquí la descripción de la imagen

Debe agregar los hashes de clave de Android de su aplicación en su portal de desarrolladores para que la Verificación Instantánea funcione. Desafortunadamente esto no es claro en los documentos de verificación instantánea actuales (estamos trabajando en hacer esto más claro).

En este momento, un par de aplicaciones de usuario sólo puede realizar la Verificación instantánea una vez por hora. Estamos mejorando esto para permitir intentos infinitivos si eres un administrador o desarrollador de la aplicación, pero no estará listo hasta el final de la semana.

Introduzca aquí la descripción de la imagen

  • La devolución de llamada de Facebook LoginButton no se llama
  • Facebook - Android autoriza el error de la aplicación
  • Inicio de sesión de Facebook en el fragmento en android
  • "Error de cookies no habilitado" en algunos dispositivos
  • Inicio de sesión de Facebook con la aplicación no instalada redirecciona a la página de inicio de sesión
  • SessionState es CLOSED_LOGIN_FAILED en el inicio de sesión nativo de FB
  • LoginButton pidiendo permiso de lista de amigos, ¿por qué?
  • Pantalla de inicio de Android Facebook no hay teclado
  • Error al inflar la clase com.facebook.widget.LoginButton con Facebook SDK 4.0.1
  • Facebook SDK para Android - el primer inicio de sesión es muy lento / lleva mucho tiempo
  • El estado de Facebook no se actualizó. Error 403, error de autenticación, SocialAuthException en Android
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.