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

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

  • התאמה אישית של מפות
  • טיפול בהתנגשות של סמן
  • התאמה אישית של Polyline

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

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

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

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

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

התאמה אישית של Polyline (בטא)

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

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

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

אפשר להשתמש בטווחים כדי לצבוע בנפרד קו פוליגוני על ידי יצירת 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)));

      

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

אפשר להגדיר שיפוע על ידי ציון שתי מערכות משולבות של 32 סיביות בצבעי אלפא-אדום-ירוק-כחול (ARGB), כדי לציין את צבעי ההתחלה והסיום של הקו. כדי להגדיר את המאפיין הזה באובייקט האפשרויות של הצורה, קוראים ל-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));

      

ייבוא של ספריית הכלים התואמת לגרסת הבטא

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

  1. מייבאים לקובץ build.gradle את ספריית ה-util שהיא תואמת בטא:
    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'
    

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

המאגר של 'טעימות' ב-GitHub כולל אפליקציות לדוגמה שמדגימות את השימוש ב-SDK של מפות Google בגרסת 3.1.0 עבור Android.