Cómo funciona la actualización automática del token
El SDK ejecuta un proceso de trabajo en segundo plano que comprueba periódicamente el token de entidad del jugador. Si el token sigue siendo válido pero se acerca a su expiración (dentro de la hora previa a expirar), el SDK vuelve a autenticarse automáticamente con las credenciales de la llamada de inicio de sesión original. Si esta actualización se realiza correctamente, el token se actualiza de forma transparente y el PFEntityHandle sigue siendo válido. No se requiere ninguna acción por parte del juego. Puede observar estas actualizaciones silenciosas del token registrando una devolución de llamada PFEntityRegisterTokenRefreshedEventHandler (consulte Actualización transparente).Cuándo debe controlar el juego la expiración del token
Hay escenarios en los que el SDK no puede actualizar automáticamente el token:- El token ya ha expirado. La actualización automática solo funciona cuando el token sigue siendo válido. Si el token ha expirado por completo (por ejemplo, después de un ciclo largo de suspensión y reanudación), el SDK no intenta un reinicio de sesión automático. En su lugar, se lo notifica al juego mediante el TokenExpiredHandler.
- Las credenciales de inicio de sesión originales ya no son válidas. Si el identificador o el token proporcionados originalmente en la solicitud de inicio de sesión ya no son válidos, la actualización automática produce un error y se invoca el TokenExpiredHandler.
Se recomienda registrar un PFEntityTokenExpiredEventHandler para todos los títulos y es esencial para los títulos del GDK que admiten la suspensión y la reanudación. Sin este controlador, el juego no tiene forma de recuperarse de un token expirado.
Registro del TokenExpiredHandler
Use PFEntityRegisterTokenExpiredEventHandler para registrarse para una devolución de llamada y PFAuthenticationReLoginWith*Async para volver a autenticarse cuando el token expire.GDK: suspensión, reanudación y Reanudación rápida
En las plataformas del GDK (consolas XBOX y Windows con el GDK), un juego se puede suspender durante un período prolongado, por ejemplo, cuando el jugador cambia a otro juego y vuelve más tarde mediante Reanudación rápida. Durante la suspensión, el token de entidad puede expirar. Como no se ejecuta código durante la suspensión, la actualización periódica en segundo plano del SDK no puede mantener activo el token.Qué ocurre al reanudar
Cuando el juego se reanuda, el SDK detecta inmediatamente el estado de reanudación y comprueba el token de entidad. No espera al siguiente ciclo de actualización periódica. Si el token expiró durante la suspensión:- El SDK detecta el token expirado.
- Se invoca la devolución de llamada del TokenExpiredHandler.
- El juego debe llamar a PFAuthenticationReLoginWith*Async desde el controlador para adquirir un token nuevo.
La comprobación del token al reanudar se desencadena en cuanto se restaura la conectividad de red. Si la red tarda un momento en reinicializarse después de la reanudación, el SDK espera a que haya conectividad antes de comprobar el token. No se pierde ninguna comprobación del token.
