2012-01-25 16 views
11

¿Cuál es la estrategia más comúnmente utilizada? estoy tratando ahora para poner en práctica lo siguiente:notificaciones push de iOS: ¿cómo lidiar con la identificación del dispositivo?

El inicio de la aplicación:

  • Obtener previamente guardados dispositivo de identificación de algunos de almacenamiento local
  • Obtener ID de dispositivo
  • Si se cambia, guardar la nueva identificación, enviar actualizar al servidor

¿Es este el enfoque correcto? ¿Cuál es la mejor manera de almacenar identificador de dispositivo localmente?

Respuesta

5

La mejor práctica es enviar el token del dispositivo push (no el mismo que el identificador único mencionado por Serg Shiyan) a Apple cada vez que se inicie la aplicación. Esto le permitirá a Apple saber que su aplicación aún está activa.

consulte Registro de notificaciones push remotas:

Al solicitar el dispositivo token y pasarlo al proveedor cada vez que sus lanzamientos de aplicaciones, usted ayuda a asegurar que el proveedor tiene el token actual para el dispositivo.

del Local and Push notifications Programming guide

En mi experiencia hay una serie de razones por las fichas de empuje podrían ser invalidado. Estos incluyen desinstalar aplicaciones y mezclar aplicaciones con diferentes certificados (desarrollo, ejecución ad-hoc contra servidores sandbox/live push). Le ahorrará algo de depuración al enviar el token cada vez que lo recomiende.

Así que, básicamente, no hay ninguna razón para almacenar el token de inserción que no sea en la memoria mientras se ejecuta su aplicación. Solo solicita uno nuevo (posiblemente el mismo) la próxima vez que se inicie su aplicación.

+0

Gracias. Lo único es que todavía necesito un token para pasar al servidor para identificar al usuario/dispositivo y todavía tengo que mantenerlo en el dispositivo de alguna manera. Supongo que en los valores predeterminados del usuario. –

+0

Sí, la identificación de un usuario probablemente se hace mejor utilizando un mecanismo diferente (tokens de dispositivo, cuentas de usuario, etc.), almacenado en el llavero, valores predeterminados del usuario o incluso iCloud. De esta forma, incluso puede tener situaciones en las que el mismo usuario tenga múltiples tokens de inserción registrados si usa la aplicación en múltiples dispositivos. –

3

"Una cadena alfanumérica única para cada dispositivo en base a varios detalles de hardware. (Sólo lectura) (en desuso en IOS 5.0. En su lugar, crear un identificador único específico para su aplicación.)

@property (nonatomic, readonly, retain) NSString *uniqueIdentifier 

Consideraciones especiales No use la propiedad uniqueIdentifier. Para crear un identificador único específico para su aplicación, puede llamar a la función CFUUIDCreate para crear un UUID y escribirlo en la base de datos predeterminada utilizando la clase NSUserDefaults ". (Apple Inc)

Cuestiones relacionadas