ios - Facebook API: ¿Cómo obtener el ID único del usuario de inicio de sesión de FB? ID de la API no coincide con el ID de usuario "real" en v2.0
facebook-graph-api facebook-login (1)
Desde v2.0 de la API de Facebook, los ID de usuario devueltos a su aplicación tienen un alcance para su aplicación (es decir, cada aplicación recibe un identificador diferente para cada usuario): no puede comparar lo que ese sitio le dice con lo que recibió su aplicación cuando user.objectID
porque intencionalmente son cadenas diferentes
Utilice la identificación devuelta a su aplicación como el identificador para los usuarios de su aplicación; no es necesario tratar de encontrar la identificación de usuario "real" o "antigua"; no hay motivo para que necesite usar la identificación de usuario dada a cualquier otra ID de la aplicación
Aquí encontrará más información sobre los cambios de v1.0 a v2.0: https://developers.facebook.com/docs/apps/upgrading
Y los ID con ámbito de aplicación se tratan específicamente aquí, incluida una forma para que los desarrolladores con múltiples aplicaciones puedan corelar los ID para los usuarios que usan más de una de sus aplicaciones: https://developers.facebook.com/docs/apps/upgrading# upgrading_v2_0_user_ids
- (void)loginViewFetchedUserInfo:(FBLoginView *)loginView user:(id<FBGraphUser>)user
{
self.profilePictureView.profileID = user.objectID;
self.nameLabel.text = user.name;
NSLog(@"My ID:%@", user.objectID);
}
Intenté imprimir la identificación del usuario usando el código anterior. Y lo que obtengo es 3176144783XXXXX
.
Sin embargo, tengo uno diferente usando esta herramienta en línea http://findmyfacebookid.com/ . El resultado es 1000042591XXXXX
.
Alguien sabe la diferencia? ¿Por qué mi aplicación y ''findmyfacebookid.com'' reciben una identificación de usuario diferente para el mismo usuario?
Nota: Mi aplicación móvil debe usar el ID único de FB para crear mi propia base de datos de usuario. Esta es la razón por la que necesito una identificación única.