Utiliser le SDK Maps pour Android v3.1.0 BÊTA

La version 3.1.0 bêta du SDK Maps pour Android est une nouvelle implémentation dotée de la même surface d'API que la version précédente (toutes les classes et méthodes restent identiques) et de nouvelles fonctionnalités à essayer :

  • Personnalisation de Maps
  • Gestion des collisions des repères
  • Personnalisation des polylignes

Ce guide vous explique comment utiliser les nouvelles fonctionnalités.

Personnalisation de Maps (bêta)

Les styles de carte dans le cloud fournissent divers outils et fonctionnalités pour faciliter la personnalisation de vos cartes et la façon dont elles sont stylisées. Au lieu de styliser vos cartes dans le code à l'aide des API et des SDK Google Maps, vous pouvez les gérer et les styliser dans Google Cloud Console. Pour en savoir plus, consultez Présentation de la personnalisation des cartes Android.

Gestion des collisions des repères (bêta)

Vous pouvez indiquer si les repères personnalisés doivent remplacer les libellés de la carte de base par défaut en cas de conflit, et pour indiquer une priorité relative entre les repères personnalisés. Pour plus d'informations, consultez Gestion des collisions des repères (Android).

Personnalisation des polylignes (bêta)

Vous pouvez désormais personnaliser l'apparence des polylignes de plusieurs manières :

  • Les polylignes multicolores contiennent des segments de différentes couleurs.
  • Les polylignes en dégradé sont colorées avec un dégradé de deux couleurs.
  • Les polylignes avec motif sont recouvertes de bitmaps qui se répètent.

Créer une polyligne multicolore

Vous pouvez utiliser des étendues pour colorer individuellement chaque segment d'une polyligne, en créant des objets StyleSpan et en les ajoutant à PolylineOptions à l'aide des méthodes addSpan() ou addSpans(). Par défaut, chaque élément dans le tableau définit la couleur du segment de ligne correspondant. L'exemple suivant montre comment définir des couleurs de segment pour créer une polyligne avec des segments rouges et verts :

Java


Polyline line = map.addPolyline(new PolylineOptions()
        .add(new LatLng(47.6677146,-122.3470447), new LatLng(47.6442757,-122.2814693))
        .addSpan(new StyleSpan(Color.RED))
        .addSpan(new StyleSpan(Color.GREEN)));

      

Kotlin


val line = map.addPolyline(
    PolylineOptions()
        .add(LatLng(47.6677146, -122.3470447), LatLng(47.6442757, -122.2814693))
        .addSpan(StyleSpan(Color.RED))
        .addSpan(StyleSpan(Color.GREEN))
)

      

Créer une polyligne en dégradé

Vous pouvez définir un dégradé en spécifiant deux entiers ARVB (alpha-rouge-vert-bleu) 32 bits qui indiquent les couleurs de début et de fin du trait. Définissez cette propriété sur l'objet d'options de la forme en appelant PolylineOptions.addSpan(). L'exemple suivant montre comment créer une polyligne en dégradé du rouge au jaune, depuis Woodland Park Zoo jusqu'à Kirkland, WA.

Java


Polyline line = map.addPolyline(new PolylineOptions()
        .add(new LatLng(47.6677146,-122.3470447), new LatLng(47.6442757,-122.2814693))
        .addSpan(new StyleSpan(StrokeStyle.gradientBuilder(Color.RED, Color.YELLOW).build())));

      

Kotlin


val line = map.addPolyline(
    PolylineOptions()
        .add(LatLng(47.6677146, -122.3470447), LatLng(47.6442757, -122.2814693))
        .addSpan(
            StyleSpan(
                StrokeStyle.gradientBuilder(
                    Color.RED,
                    Color.YELLOW
                ).build()
            )
        )
)

      

Créer une polyligne à motif

Vous pouvez créer une polyligne recouverte d'une texture de bitmaps qui se répètent. Pour ce faire, créez un StampStyle de TextureStyle, puis définissez cette propriété sur l'objet d'options de la forme en appelant PolylineOptions.addSpan() comme illustré ici :

Java


StampStyle stampStyle =
        TextureStyle.newBuilder(BitmapDescriptorFactory.fromResource(R.drawable.walking_dot)).build();
StyleSpan span = new StyleSpan(StrokeStyle.colorBuilder(Color.RED).stamp(stampStyle).build());
map.addPolyline(new PolylineOptions()
        .add(new LatLng(47.6677146,-122.3470447), new LatLng(47.6442757,-122.2814693))
        .addSpan(span));

      

Kotlin


val stampStyle =
    TextureStyle.newBuilder(BitmapDescriptorFactory.fromResource(R.drawable.walking_dot)).build()
val span = StyleSpan(StrokeStyle.colorBuilder(Color.RED).stamp(stampStyle).build())
map.addPolyline(
    PolylineOptions()
        .add(LatLng(47.6677146, -122.3470447), LatLng(47.6442757, -122.2814693))
        .addSpan(span)
)

      

Importer la bibliothèque d'utilitaires compatibles avec la version bêta

Si vous utilisez la bibliothèque d'utilitaires de l'API Google Maps pour Android, vous devez également mettre à jour les dépendances de votre projet afin de remplacer la version existante par celle compatible avec la version bêta. Pour ce faire, procédez comme suit :

  1. Importez la bibliothèque d'utilitaires compatibles avec la version bêta dans votre fichier build.gradle :
    implementation 'com.google.maps.android:android-maps-utils-v3:1.3.1'
    
  2. Supprimez les éléments suivants de votre fichier build.gradle pour supprimer la bibliothèque d'utilitaires non compatible avec la version bêta :
    implementation 'com.google.maps.android:android-maps-utils:1.3.1'
    

Exécuter les exemples

Le dépôt Google Samples sur GitHub inclut des exemples d'applications qui illustrent l'utilisation du SDK Maps pour Android version v3.1.0 bêta.