AVISO: Los servicios de juego de Google Maps Platform dejarán de estar disponibles el 18 de octubre de 2021. Los usuarios actuales tendrán acceso continuo hasta el 31 de diciembre de 2022. Durante este período, seguiremos brindando asistencia y soluciones para los errores y las interrupciones importantes. Consulta la Guía de transición a los servicios de juego para obtener recursos que te ayudarán a planificar los siguientes pasos de tus proyectos.

Prácticas recomendadas de producción

Google recomienda que sigas estas prácticas recomendadas cuando administres y ejecutes tu app.

Cómo proteger las claves de API

Necesitas una clave de API para utilizar nuestros servicios en línea. Su uso le permite a Google medir tu uso. Te recomendamos que restrinjas tus claves de API para evitar el uso no autorizado.

Tipos de restricciones de clave de API

Existen dos tipos de restricciones de clave de API y puedes usarlas al mismo tiempo.

Tipo de restricciónRestringe el uso de la clave a
Restricción de API Una API en particular
Restricción de aplicaciones Direcciones IP, sitios web o apps particulares

Recomendaciones de restricciones de claves de API

Te recomendamos que asignes claves de API independientes para los siguientes casos.

SituaciónRecomendación
Tus servidores de juegos de backend llaman a la API de Playable Locations para recuperar las ubicaciones reproducibles. Configura una clave con dos restricciones:
  • Restricción de API: Solo permite llamadas a la API de Playable Locations.
  • Restricción de aplicaciones: Permite las llamadas que se originan solo desde las direcciones IP del servidor de juegos de backend.
La versión para Android de tu app llama al SDK de Maps para Unity a fin de recuperar datos geográficos. Configura una clave con una restricción de aplicaciones para permitir llamadas solo desde la versión para Android de tu app.
La versión para iOS de tu app llama a la API de Maps SDK for Unity para recuperar datos geográficos. Configura una clave con una restricción de aplicaciones para permitir llamadas solo desde la versión para iOS de tu app.

Para obtener más información, consulta Prácticas recomendadas sobre la seguridad de la API.

Para configurar restricciones de claves de API

  1. Visita el panel de credenciales en la consola de Google Cloud.
  2. Selecciona la clave de API para la que deseas establecer una restricción. Aparecerá la página de propiedades de la clave de API.
  3. En Restricciones de clave, selecciona la pestaña Restricciones de aplicaciones y, luego, selecciona uno de los cuatro tipos de restricciones de aplicaciones.
    Tipo de restricción Descripción
    URL de referencia HTTP Acepta solicitudes de la lista de sitios web que proporciones.
    Direcciones IP Acepta solicitudes de la lista de direcciones IP de servidor web que proporciones.
    Apps para Android Agrega el nombre de tu paquete y la huella digital del certificado de firma SHA-1 a fin de restringir el uso de tu app para Android.
    Apps para iOS Acepta solicitudes de la app para iOS con el identificador de paquete que proporciones.
  4. En Restricciones de clave, selecciona la pestaña Restricciones de API y, luego, la API a la que deseas restringir tu clave de API.
  5. Haz clic en Guardar (Save).

Compatibilidad con actualizaciones de claves de API

Asegúrate de contar con la infraestructura necesaria para actualizar las claves de API en toda la pila de entrega. De esa manera, el juego puede recuperarse si se ve comprometida la clave de API y debes renovarla con poca antelación.

Usa claves independientes para cada aplicación, de modo que puedas cambiar fácilmente una clave por una sin afectar a otras apps.

Recomendaciones de seguridad de los servidores de videojuegos

Cuando el servidor de la API de Playable Locations experimenta una interrupción por cualquier motivo, se producen problemas cuando vuelve a estar en línea, es decir, cuando varios servidores de juegos intentan volver a conectarse a él al mismo tiempo. Este aumento de QPS puede enviar al servidor al modo DoS, lo que agrava la situación mediante el bloqueo del tráfico entrante.

A fin de mitigar esta situación, Google te solicita que implementes la retirada exponencial binaria en el servidor de tu juego. Es un enfoque sistemático para separar los reintentos de conexión. Específicamente, implementarás un algoritmo que espera N segundos después de un intento de reconexión con errores antes de volver a intentarlo. Si falla el siguiente intento, tu algoritmo duplica el período de espera y, luego, vuelve a intentarlo. Si falla el siguiente intento, el algoritmo vuelve a duplicar el período de espera y vuelve a intentarlo. Continúas duplicando el período de espera después de cada intento, hasta que el intento final tenga éxito.

Administra códigos de estado de retorno HTTP

Debes implementar la retirada exponencial binaria para algunos códigos de retorno HTTP, pero no para todos.

años 400
Estos son errores de cliente que, por lo general, no se recuperan, por lo que reintentar las solicitudes con errores que producen estos códigos de error no funcionará. Debes detectar este tipo de errores durante las pruebas.
429
Este es un error de recurso agotado que se produce cuando comienzas a quedarte sin cuota de API. Para ver los límites de QPS de la API de tu proyecto, visita las Cuotas de las APIs de Google.
años 500
Estos son los errores del servidor, el tipo de errores para el que es más útil la retirada exponencial.