2010-01-05 7 views
20

¿es posible obtener la información del usuario, como ID de apple, a través del SDK? Estoy escribiendo una aplicación que requerirá una cuenta vinculada al usuario de la aplicación. Quiero permitir que el usuario tenga una cuenta en varios dispositivos, por lo que no es posible usar la ID del dispositivo. La forma más fácil de hacerlo, creo, es utilizar el ID de Apple del usuario de la aplicación como la identificación de esta cuenta, por lo que no es necesario que creen otra cuenta.¿Es posible obtener la ID de Apple del usuario a través del SDK?

Respuesta

3

No es posible (AFAIK). Solo puedes recuperar el UDID del dispositivo.

Lo que he hecho en el pasado es vincular una cuenta de mi lado con varios UDID del lado del usuario, por lo que cuando instalan la aplicación en varios dispositivos pueden simplemente usar esa sola cuenta y vinculará automáticamente ese dispositivo . No es ideal, pero no he visto una mejor solución.

+0

Entonces, ¿eso significaría que tendrían que crear una cuenta con usted e iniciar sesión para usar el servicio? Esa es la solución alternativa, solo intento simplificar mi proceso para que el usuario no tenga que crear una cuenta e iniciar sesión cada vez que se ejecute. – gjrwebber

+0

Bueno, después de la primera vez, podría simplemente vincularlo con el UDID. –

+2

No puede usar el UDID del dispositivo, está en desuso a partir de iOS 5.0, y Apple rechazará cualquier aplicación que lo use. – cheeesus

2

No, es un problema de privacidad, al igual que su número de teléfono.

Aún deberían crear una cuenta en su sitio ya que no tiene acceso a las bases de datos de Apple, y nadie estará dispuesto a darle sus contraseñas de iTunes por razones obvias.

Todo lo que realmente está ahorrando es que ingresen un nombre de usuario, ya que aún tendrían que darle una contraseña. Es muy fácil recordar esta información para futuras ejecuciones de su aplicación. Mire en usar NSUserDefaults. Recomendaría no usar el UDID y le daría al usuario la opción de guardar su contraseña. De esa forma, si el teléfono se pierde, quien lo encuentre no tiene acceso automático a la cuenta del propietario. Si el usuario opta por el inicio de sesión automático, puede guardar fácilmente la contraseña y enviarla junto con el nombre de usuario cuando se carga la aplicación.

1

Si se trata de un juego, se puede utilizar la cuenta de Game Center para identificar a un usuario

+1

¡Exactamente! AFAIK esta es la única identificación confiable que se puede obtener en el mundo de Apple. Apple debería pensar en la necesidad de estos desarrolladores con más cuidado, en Android puede obtener fácilmente la dirección de correo electrónico del usuario y nadie muere por ello y todos pueden obtener una identificación única confiable para cualquier tipo de aplicación. – Heitor

0

estoy almacenando el nombre de usuario y una contraseña cifrada en un archivo que se almacena en el espacio de archivos de aplicaciones del usuario. Cuando se inicia la aplicación, si encuentra este archivo, intenta iniciar sesión sin preguntar al usuario. Tener una contraseña, incluso encriptada, almacenada en el sistema de archivos parece insegura, pero la aplicación no es una en la que las personas puedan intentar robar contraseñas.

+8

Utilice los servicios de Keychain para este tipo de datos. – sosborn

1

En lugar del UDID para el dispositivo, puede probar el [UIDevice currentDevice] .identifierForVendor Está vinculado al dispositivo y la instalación de la aplicación.

Cuestiones relacionadas