שימוש ב-SDK של מפות Google ל-Android גרסה 3.1.0

גרסה 3.1.0 בטא של ה-SDK של מפות Google ל-Android היא הטמעה חדשה עם אותה פלטפורמת API כמו בגרסה הקודמת (כל המחלקות והשיטות נשארות ללא שינוי), וכמה תכונות חדשות שכדאי לנסות:

  • התאמה אישית של מפות Google
  • טיפול בסמנים של התנגשות
  • התאמה אישית של קו פוליגוני

במדריך הזה מוסבר איך להשתמש בתכונות החדשות.

התאמה אישית של מפות Google (בטא)

עיצוב מפות מבוסס-ענן מספק מגוון של כלים ופיצ'רים שמאפשרים להתאים אישית ולנהל את סגנון המפות בקלות רבה יותר. במקום לעצב את המפה בקוד באמצעות ממשקי ה-API וערכות ה-SDK של מפות Google, אפשר לנהל ולעצב את המפות במסוף Google Cloud. למידע נוסף, ראו סקירה כללית של התאמה אישית של מפה ל-Android.

טיפול בהתנגשות בין סמנים (בטא)

אפשר להגדיר אם סמנים מותאמים אישית יקבלו עדיפות על פני תוויות ברירת המחדל של המפה הבסיסית כשיש התנגשות, וכדי לציין עדיפות יחסית בין סמנים מותאמים אישית. מידע נוסף זמין במאמר טיפול בסימון התנגשות (Android).

התאמה אישית של קו מרובה נקודות (בטא)

יש עכשיו כמה דרכים חדשות להתאים אישית את המראה של קווים פוליגוניים:

  • קווים פוליגוניים צבעוניים מגדירים פלחים של קווים פוליגוניים לצבעים שונים.
  • קווים פוליגוניים של צבעים צובעים קו פוליגוני באמצעות הדרגתיות של שני צבעים.
  • קווים פוליגוניים מוטמעים בסגנון פוליגונים באמצעות מפות סיביות חוזרות.

יצירת קו פוליגוני צבעוני

אפשר להשתמש בטווחים כדי לצבוע בנפרד מקטעי קו פוליגוני על ידי יצירת אובייקטים StyleSpan, והוספתם ל-PolylineOptions באמצעות השיטות addSpan() או addSpans(). כברירת מחדל, כל פריט במערך יגדיר את הצבע של פלח השורה המתאים. הדוגמה הבאה מציגה את הגדרת צבעי הקטע כדי ליצור קו פוליגוני עם קטעים אדומים וירוקים:

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))
)

      

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)));

      

יצירת קו פוליגוני הדרגתי

ניתן להגדיר הדרגתי על ידי ציון שני מספרים שלמים בצבע אלפא-אדום-ירוק-כחול (ARGB) של 32 סיביות, כדי לציין את צבעי ההתחלה והסיום של הקו. כדי להגדיר את המאפיין הזה באובייקט האפשרויות של הצורה, קוראים ל-PolylineOptions.addSpan(). הדוגמה הבאה מציגה יצירת קו פוליגוני הדרגתי הדרגתי של צבע אדום לצהוב מגן החיות של וודלנד פארק לקירקלנד, וושינגטון.

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()
            )
        )
)

      

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())));

      

יצירת קו פוליגוני עם חותמת

ניתן להגדיר את המראה של קו פוליגוני למרקם חוזר של מפת סיביות (bitmap). כדי לעשות את זה, צריך ליצור StampStyle של TextureStyle ואז להגדיר את המאפיין הזה באובייקט האפשרויות של הצורה באמצעות קריאה ל-PolylineOptions.addSpan() כמו בדוגמה הבאה:

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)
)

      

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));

      

ייבוא ספריית קובצי העזר התואמת לגרסת הבטא

אם משתמשים בספריית הכלים של Google Maps Android API, צריך לעדכן גם את יחסי התלות של הפרויקט כדי להחליף את הגרסה הקיימת בגרסה התואמת לגרסת הבטא. לשם כך:

  1. מייבאים את ספריית ה-util שתואמת לגרסת הבטא בקובץ build.gradle:
    implementation 'com.google.maps.android:android-maps-utils-v3:1.3.1'
    
  2. מסירים את הפריטים הבאים מ-build.gradle כדי להסיר את ספריית הכלים שלא תואמת לבטא:
    implementation 'com.google.maps.android:android-maps-utils:1.3.1'
    

הרצת הדוגמאות

מאגר Google Samples ב-GitHub כולל אפליקציות לדוגמה שמדגימות את השימוש ב-SDK של מפות Google בגרסת v3.1.0 ל-Android.