iphone - play - Sandbox Game Center Turn Event Notifications Not Consistent
play center ios (2)
Estoy haciendo un juego basado en turnos, usando la funcionalidad Game Center Turn-Based Gaming. Estoy usando el simulador y mi iPhone para probar notificaciones de eventos de viraje. Los resultados son muy inconsistentes. Alrededor del 75% del tiempo cuando realizo un movimiento en el simulador y paso el turno, no recibo ninguna notificación en mi iPhone. Parece que esta función no se llama:
handleTurnEventForMatch:didBecomeActive:
Establecí GKEventHandlerDelegate en el código que autentica al usuario local y parece estar configurado correctamente. El hecho de que reciba notificaciones de vez en cuando sugiere que este no es el lugar donde reside el problema.
¿Alguien tiene alguna idea de lo que podría ser el problema aquí? ¿Podría ser esto un problema con el Servidor Sandbox Game Center? ¿Limitan la cantidad de notificaciones que puedes enviar en un corto período de tiempo o algo así?
Editar: Acabo de encontrar algunas publicaciones de personas que experimentan el mismo problema, pero ninguna solución. No hay publicaciones muy recientes sin embargo. ¿Alguna actualización?
Edit2: También encuentro que después de un movimiento, cuando abro el GKTurnBasedMatchmakerViewController en el otro dispositivo, todavía dice que es el turno del otro jugador. Cuando lo cierro y lo vuelvo a abrir, la información es correcta. Además, cuando abro el juego GKTurnBasedMatchmakerViewController cuando todavía muestra información incorrecta, me da el objeto de coincidencia correcto con la información actualizada. ¿Podría esto estar relacionado de alguna manera?
Tengo el mismo problema. Sin embargo, cuando lo probé en varios dispositivos, funcionaba bien ... Puede haber algún problema con el simulador
Pensé que compartiría mi solución con usted, con la esperanza de que sea el mismo problema que está experimentando. Como puede ver en mi comentario a su pregunta, estaba teniendo el mismo problema que usted. Resultó que mi configuración en iTunes Connect era la culpable, sin mi conocimiento. Lo que debe verificar es que todavía tiene Game Center habilitado en AMBOS lugares que requiere iTunes Connect. Primero, después de entrar en "Administrar mis aplicaciones" en iTunes Connect, seleccione su aplicación y en el menú de la derecha, y haga clic en "Administrar Game Center". Asegúrese de que esto esté habilitado actualmente. Incluso recomendaría deshabilitarlo y volver a habilitarlo nuevamente para una buena medida.
Además (y esto es lo que me faltaba), debes habilitarlo en un lugar más. Regrese a la pantalla anterior cuando selecciona la aplicación por primera vez. La parte superior derecha es donde puede seleccionar Administrar Game Center, pero estamos buscando en la parte inferior en la sección "Versiones". Haga clic en el botón Ver detalles de su aplicación y asegúrese de que el botón Game Center esté habilitado cerca de la parte inferior. De nuevo, lo desactivaría y lo volvería a habilitar aquí también. Espere unos 10 minutos, borre todos los turnos abiertos y las coincidencias de la aplicación de Game Center (esto podría ser un paso opcional) y compile y ejecute de nuevo. Con suerte, recibirás notificaciones de turno nuevamente.