Obtener el número de teléfono de Facebook Account Kit
La documentación del Kit de cuentas indica que si se inició la sesión de inicio de sesión con AccountKitActivity.ResponseType.TOKEN, es posible acceder a la identificación del kit de cuenta, número de teléfono y correo electrónico de la cuenta actual mediante una llamada a getCurrentAccount ().
¿Es posible obtener el número de teléfono del usuario si empezó con AccountKitActivity.ResponseType.CODE al igual que la forma en que Saavn lo hace?
- ¿Cuál es la forma correcta de crear una pantalla de inicio de sesión / actividad en Android?
- Compilación de error en SDK "Utilizar Facebook Login"
- ¿Por qué no puedo iniciar sesión para probar las cuentas de usuario de Facebook desde la aplicación nativa de Android?
- Clave única de acceso a Facebook de Facebook
- CircularRedirectException con autenticación de google
- No se puede resolver isConnected () - Inicio de sesión de Google+ en android studio
- Programar la actividad 'Añadir cuenta' en Android 2.2
- ¿Puedo usar el AccountManager de Android para obtener el token de acceso de OAuth para AppEngine?
- "FirebaseError: Se proporcionan credenciales de autenticación no válidas" al configurar el inicio de sesión de Google en Android
- Android Facebook Api Exception - remote_app_id no coincide con el ID almacenado
- Cómo iniciar sesión en facebook en WebView si ya tiene acceso token de FB SDK en Android
- Android: Inicia sesión con Twitter usando Twitter4J
- FacebookCallback.onCancel se llama cuando se intenta iniciar sesión con facebook sdk
Sí, es posible siempre que use LoginType.PHONE en su configuración.
AccountKit.getCurrentAccount(new AccountKitCallback<Account>() { @Override public void onSuccess(final Account account) { String accountKitId = account.getId(); PhoneNumber phoneNumber = account.getPhoneNumber(); String phoneNumberString = phoneNumber.toString(); } @Override public void onError(final AccountKitError error) { // Handle Error } });
Este es su número de teléfono: phoneNumberString; pero, account.getEmail()
devolverá null si LoginType.PHONE se usó en su configuración.
Viceversa si utiliza LoginType.EMAIL en su configuración.
El propósito de utilizar CODE en lugar de TOKEN es desplazar la solicitud de token a su servidor de aplicaciones. El servidor utiliza la api de Graph para enviar el token de autenticación y si el token de autenticación es válido, la llamada devuelve el token de acceso que se utiliza para verificar la identidad del usuario para las siguientes llamadas de la API.
Una llamada de gráfico para validar el token de acceso devuelve el ID del kit de cuenta más metadatos adicionales como el número de teléfono asociado y / o correo electrónico.
{ "id":"12345", "phone":{ "number":"+15551234567" "country_prefix": "1", "national_number": "5551234567" } }
Puede obtener el ID de la cuenta, el correo electrónico y el número de teléfono utilizando el siguiente código:
let accountKit = AKFAccountKit(responseType: AKFResponseType.accessToken) accountKit.requestAccount { (account, error) in if(error != nil){ //error while fetching information }else{ print("Account ID \(account?.accountID)") if let email = account?.emailAddress,email.characters.count > 0{ print("Email\(email)") }else if let phoneNum = account?.phoneNumber{ print("Phone Number\(phoneNum.stringRepresentation())") } } }
Si tiene access code/token
…
En el server
o client
, puede intercambiar access token
para el mobile number and country code
con esta FB AccountKit API
– https://graph.accountkit.com/v1.1/me/?access_token=xxxxxxxxxxxx . Aquí xxxxxxxxxx
es su Access Token
.
Si tiene auth code/token
lugar …
En primer lugar, puede intercambiar el access code
de un access token
en el server side
del server side
(porque contiene el secreto de la aplicación ) con esta API
: https://graph.accountkit.com/v1.1/access_token?grant_type=authorization_code&code=xxxxxxxxxx&access_token=AA yyyyyyyyyy | zzzzzzzzzz . Aquí xxxxxxxxxx
, yyyyyyyyyy
y yyyyyyyyyy
son el auth code
, el app id
app secret
y el app secret
respectivamente. Una vez que tenga el access token
con él, puede obtener el mobile number
con la API
mencionada anteriormente.
Buena suerte.
- Prueba Espresso para notificación de presentarse
- RecyclerView GridLayoutManager con el encabezado de ancho completo