pages notes descargar apple app iphone ios push-notification game-center gkturnbasedmatch

iphone - descargar - notes app ios



Las notificaciones automáticas de GKTurnBasedMatch son muy inconsistentes (3)

Estoy probando un juego por turnos entre dos dispositivos. Por lo que yo entiendo, enviar un turno con [GKTurnBasedMatch endTurnWithNextParticipants:] , por ejemplo, debería enviar automáticamente una notificación de centro de juego al oponente. A veces, esto funciona como se esperaba: el turno se envía y de inmediato aparece una notificación de pancarta en el otro dispositivo. Todo está bien.

Lo que me desconcierta es que otras veces, a pesar de que el giro en sí mismo se envía correctamente (puedo decirlo porque cuando el oponente actualiza las partidas, la partida está actualizada), no hay notificaciones automáticas .

¿Hay algún agujero en mi comprensión aquí? Si estoy entendiendo correctamente, las notificaciones inconsistentes no deberían tener nada que ver con mi código, porque el problema aquí no es cómo manejo las notificaciones, es que no hay ninguna notificación. En otras palabras, [handleTurnEventForMatch:] (un método GKTurnBasedEventHandlerDelegate ) no tiene nada que ver con eso (no creo) porque si no se recibe ninguna notificación, nunca se llamará de todos modos.

Entonces, me pregunto si alguien ha tenido alguna experiencia con esto. ¿Es posible que esto se deba a algo en mi código? O, ¿es posible que la zona de pruebas de Game Center sea responsable de las inconsistencias, y no hay nada que pueda hacer al respecto?

Cualquier pensamiento o idea sería muy apreciado.


Es un problema con el modo de recinto de seguridad de GameCenter. Para que su dispositivo ingrese al modo de espacio aislado, debe abrir / ejecutar su aplicación y autenticar el centro de juegos. Si dices, abre un juego diferente (publicado) después de que tu juego esté abierto, abandonará el modo de espacio aislado y volverá al modo de centro de juego normal.

Incluso si tu juego se ejecuta en segundo plano, siempre que sea el último juego habilitado para un centro de juegos abierto, deberías recibir las notificaciones push de la forma habitual. Pero si abre el juego y luego cancela el proceso, ya no estará en el modo de espacio aislado y no recibirá las notificaciones automáticas.


Para aquellos que están experimentando problemas similares: esto resultó ser un problema de recinto de seguridad de Game Center. No tenía nada que ver con mi código, y las cosas estaban bien en el lanzamiento de la App Store. Por lo tanto, lee los comentarios aquí y asegúrate de que no haya otras cosas que tengan en cuenta los problemas que estás teniendo ... ¡pero ten en cuenta que es posible que solo experimentes algunos problemas de la zona de pruebas de Game Center que están fuera de tu control!


También estoy enfrentando el mismo problema. Mi juego deja de recibir eventos de turno y de notificaciones de Game Center, terminé el juego y estaba probando, pero esta semana, el problema comenzó a suceder. Funcionaba como un amuleto, pero de repente las instancias comenzaron a no recibir eventos por turnos durante un par de días.

Estoy usando iOS7 SDK y mi objetivo es iOS7 (el manejo de turno de eventos es diferente al de las versiones anteriores de iOS, necesitaré intercambios en las próximas funciones del juego, es por eso que estoy usando iOS7).

Luego hice una aplicación de prueba para comprobar si era la misma con iOS6 y SDK anteriores, pero sin ayuda, era la misma. Así que no pierdas tu tiempo para actualizar tu código a iOS7 esperando que funcione, el problema está ahí. También probé muchas cosas, como restablecer dispositivos y configuraciones, usar nuevos usuarios, etc.

También probé con el juego basado en turnos de Ray Wenderlich con el tutorial de iOS 5, al descargar el código fuente, y tampoco funciona.

El caso es que, generalmente cuando inicio el juego, el juego recibe eventos de turno, pero después de unos turnos, simplemente se detiene, y cuando deja de recibir, se detiene como siempre. Si vuelvo a cargar la coincidencia, puedo obtener la coincidencia actualizada y sus datos también se actualizan, de modo que pueda hacer el cambio. Significa que el partido se actualiza en Game Center. Entonces, Game Center no está enviando los datos a los usuarios (posiblemente esto esté sucediendo porque el usuario no puede recibir notificaciones de Game Center cuando el juego está en segundo plano), o el GameKit no está disparando el evento al controlador.

No sé por qué está sucediendo, o por qué comenzó a suceder, pero no puedo lanzar mi juego de esta manera, esperando que salga de la caja de arena. Intentaré un par de cosas más (como intentar cambiar los recordatorios de iOS7, para ver si lo envían al usuario), y luego preguntaré al equipo de soporte de Apple. Otra cosa que planeo hacer es poner mi aplicación de prueba en la App Store y verla si funciona fuera de la caja de arena.

Con suerte, es un problema de sandbox.