A partir de la versión 18.0.0 del SDK de Maps para Android, hay disponible un procesador de mapas actualizado. Este procesador ofrece muchas mejoras, como la compatibilidad con el diseño de mapas basado en Cloud. Puedes aceptar probar el nuevo procesador antes de que se convierta en el predeterminado para dispositivos Android mediante un lanzamiento progresivo a partir de junio de 2022.
El nuevo procesador proporciona los siguientes beneficios:
- Funciones de diseño de mapas basado en Cloud disponibles con el nuevo procesador
- Personalizaciones avanzadas de polilíneas disponibles con el nuevo procesador
- Menor carga de red, demanda de procesamiento y consumo de memoria
- Control de gestos mejorado para mejores animaciones, además de desplazamiento lateral y zoom más fluidos
- Transiciones más fluidas y etiquetas de mapa claramente posicionadas
- Una experiencia del usuario más estable y mejorada
Dispositivos compatibles
Para usar el nuevo procesador, los dispositivos deben cumplir con los siguientes requisitos:
- Android 5.0 (nivel de API 21) o una versión posterior
- 2 GB o más de almacenamiento de datos
- Usar la versión 21.39.14 o una posterior de los Servicios de Google Play
Los dispositivos que utilicen Android 4.4W (nivel de API 20) y versiones anteriores, o que tengan menos de 2 GB de almacenamiento de datos, o bien aquellos que utilicen la versión 21.39.13 o una anterior de los Servicios de Google Play seguirán usando el procesador heredado.
Cómo probar el nuevo procesador
Para habilitar el nuevo procesador, sigue estos pasos:
- Actualiza las dependencias de tus apps para usar
com.google.android.gms:play-services-maps:18.0.0
o versiones posteriores. - Actualiza tu código para importar
MapsInitializer
yMapsInitializer.Renderer
de forma explícita. - Actualiza tu código para llamar a
MapsInitializer.initialize()
y solicitarRenderer.LATEST
. - Usa
OnMapsSdkInitializedCallback
para determinar qué versión del procesador se devolvió.
Tu código debe llamar a MapsInitializer.initialize()
antes de que se cree cualquiera de estos elementos: MapView
, MapFragment
o SupportMapFragment
. Te recomendamos que se haga la llamada en onCreate
para Application
o Activity
de tu app, antes de que quede configurada su vista de contenido.
En el siguiente ejemplo, se muestra cómo llamar a MapsInitializer.initialize()
para solicitar una versión del procesador.
Java
import com.google.android.gms.maps.MapsInitializer; import com.google.android.gms.maps.MapsInitializer.Renderer; import com.google.android.gms.maps.OnMapsSdkInitializedCallback; class MapRendererOptInApplication extends Application implements OnMapsSdkInitializedCallback { @Override public void onCreate() { super.onCreate(); MapsInitializer.initialize(getApplicationContext(), Renderer.LATEST, this); } @Override public void onMapsSdkInitialized(MapsInitializer.Renderer renderer) { switch (renderer) { case LATEST: Log.d("MapsDemo", "The latest version of the renderer is used."); break; case LEGACY: Log.d("MapsDemo", "The legacy version of the renderer is used."); break; } } }
Kotlin
import com.google.android.gms.maps.MapsInitializer import com.google.android.gms.maps.MapsInitializer.Renderer import com.google.android.gms.maps.OnMapsSdkInitializedCallback internal class MapRendererOptInApplication : Application(), OnMapsSdkInitializedCallback { override fun onCreate() { super.onCreate() MapsInitializer.initialize(applicationContext, Renderer.LATEST, this) } override fun onMapsSdkInitialized(renderer: MapsInitializer.Renderer) { when (renderer) { Renderer.LATEST -> Log.d("MapsDemo", "The latest version of the renderer is used.") Renderer.LEGACY -> Log.d("MapsDemo", "The legacy version of the renderer is used.") } } }