במחלקה ConsumerMapStyle
יש שיטות מגדירות ומקבלות אפשרויות, שמאפשרות התאמה אישית דינמית של סמנים וקווים מרובים. המחלקה הזו נחשפת באופן אסינכרוני באמצעות השיטה ConsumerController.getConsumerMapStyle()
.
ההתאמה האישית של ממשק המשתמש נשמרת בכל סבבי המכשירים ותישאר בתוקף עד לניתוק של ConsumerController
.
סמנים בהתאמה אישית
השיטה להגדרת סוג הסמן והמאפיינים שלו היא ConsumerMapStyle.setMarkerStyleOptions()
. האפשרויות של הסמנים המותאמים אישית מבטלות את ערכי ברירת המחדל שסופקו על ידי ה-SDK של הצרכן.
כדי לשחזר את ערכי ברירת המחדל, צריך לקרוא לפונקציה setMarkerStyleOptions()
עם הערך null לפרמטר MarkerOptions
. מאחזרים את השדה MarkerOptions
הפעיל באמצעות getMarkerStyleOptions()
.
סוגי סמנים
הסמנים הבאים זמינים להתאמה אישית:
TRIP_PICKUP_POINT
TRIP_DROPOFF_POINT
TRIP_INTERMEDIATE_DESTINATION
TRIP_VEHICLE
TRIP_PICKUP_POINT
ו-TRIP_DROPOFF_POINT
מוצגים במהלך מעקב אחר הנסיעה.
TRIP_VEHICLE
מוצג במהלך המעקב אחר הנסיעה. סמל הסמן לא משתנה בהתאם לסוג הרכב בפועל בנסיעה. ערכת ה-SDK לצרכנים מעדכנת
את הסיבוב של הסמל TRIP_VEHICLE
במהלך מעקב אחר הנסיעה, כדי לחקות את ההתנהגות של הרכב בפועל כשהוא נוסע במסלול.
אפשרויות סימון
המאפיינים הניתנים להתאמה אישית הזמינים לכל סמן הם קבוצת המאפיינים שמסופקת על ידי מפות Google MarkerOptions
.
MarkerOptions
נוצר באמצעות ה-constructor שלו, והמאפיינים המותאמים אישית מצוינים באמצעות שיטות הסגנון Setter.
ערכי ברירת המחדל מסופקים לכל נכס, לכן צריך לציין רק ערכים מותאמים אישית.
כדי להשבית סמן, צריך להגדיר את visible
לערך false
.
יש לספק מספיק נתונים כדי לאפשר לכם להשתמש ברכיב ממשק משתמש משלכם במקומו.
דוגמה
Java
// Initializing marker options.
consumerController
.getConsumerMapStyle()
.addOnSuccessListener(
consumerMapStyle -> {
consumerMapStyle.setMarkerStyleOptions(
MarkerType.TRIP_VEHICLE,
new MarkerOptions()
.visible(false));
});
// Reset marker options to default values.
consumerMapStyle.setMarkerStyleOptions(MarkerType.TRIP_VEHICLE, null);
Kotlin
// Initializing marker options.
consumerController
.getConsumerMapStyle()
.addOnSuccessListener({ consumerMapStyle ->
consumerMapStyle.setMarkerStyleOptions(MarkerType.TRIP_VEHICLE, MarkerOptions().visible(false))
})
// Reset marker options to default values.
consumerMapStyle.setMarkerStyleOptions(MarkerType.TRIP_VEHICLE, null)
קווים פוליגוניים מותאמים אישית
התאמה אישית של Polyline מוגדרת באמצעות השיטה ConsumerMapStyle.setPolylineStyleOptions
. הגדרת אפשרויות של פוליגונים בהתאמה אישית מבטלת את ערכי ברירת המחדל שסופקו על ידי ה-SDK של הצרכן. כדי לשחזר את ערכי ברירת המחדל, אפשר להפעיל את setPolylineStyleOptions
עם null לפרמטר PolylineOptions
. אפשר לאחזר את השדה PolylineOptions
הפעיל באמצעות השיטה getPolylineStyleOptions
.
סוגי קווים פוליגוניים
אלה סוגי הקווים הזמינים להתאמה אישית:
ACTIVE_ROUTE
REMAINING_ROUTE
הערכים ACTIVE_ROUTE
ו-REMAINING_ROUTE
מוצגים במהלך מעקב אחר הנסיעה ומייצגים את מסלול הרכב.
תכונות פוליגוניות
המאפיינים הניתנים להתאמה אישית שזמינים לכל קו פוליגוני מסופקים על ידי מפות Google PolylineOptions
.
PolylineOptions
נוצר באמצעות ה-constructor שלו, והמאפיינים המותאמים אישית מצוינים באמצעות שיטות הסגנון Setter. ערכי ברירת מחדל מוגדרים לכל מאפיין, כך שצריך לציין רק ערכים מותאמים אישית.
כדי להשבית את הקו הפוליגוני, מגדירים את visible
לערך false
.
דוגמה
Java
// Initializing polyline style options.
consumerController
.getConsumerMapStyle()
.addOnSuccessListener(
consumerMapStyle -> {
consumerMapStyle.setPolylineStyleOptions(
PolylineType.ACTIVE_ROUTE,
new PolylineOptions()
.visible(false));
});
// Reset polyline options to default values.
consumerMapStyle.setPolylineStyleOptions(PolylineType.ACTIVE_ROUTE, null);
Kotlin
// Initializing polyline options.
consumerController
.getConsumerMapStyle()
.addOnSuccessListener({ consumerMapStyle ->
consumerMapStyle.setPolylineStyleOptions(
PolylineType.ACTIVE_ROUTE,
PolylineOptions().visible(false)
)
})
// Reset polyline options to default values.
consumerMapStyle.setPolylineStyleOptions(PolylineType.ACTIVE_ROUTE, null)
המסלול הפעיל ושאר המסלול
כשהתכונה 'התקדמות נסיעה והזמנה' מופעלת, האפליקציה יכולה להתאים אישית את חוויית המשתמש באמצעות קווים פוליגוניים שמראים את המסלול של כלי הרכב הפעילים ואת המסלול שנותר.
המסלול הפעיל הוא הנתיב שהרכב נוסע בו כרגע כדי להגיע לנקודת הציון הבאה בנסיעה הפעילה של הצרכן. המסלול הנותר הוא הנתיב שהרכב יעבור אחרי המסלול הפעיל. כשנקודת העצירה של המסלול הפעיל היא ציון הדרך האחרון, המסלול הנותר לא קיים.
האפליקציה שלך יכולה להתאים אישית את הקווים הפוליגוניים הפעילים ואת שאר הנתיבים. כברירת מחדל, המסלול הפעיל גלוי והמסלול הנותר לא גלוי.
דוגמה
Java
// Initializing polyline options.
consumerController
.getConsumerMapStyle()
.addOnSuccessListener(
consumerMapStyle -> {
consumerMapStyle.setPolylineStyleOptions(
PolylineType.ACTIVE_ROUTE,
new PolylineOptions()
.color(Color.BLUE));
consumerMapStyle.setPolylineStyleOptions(
PolylineType.REMAINING_ROUTE,
new PolylineOptions()
.color(Color.BLACK)
.width(5)
.visible(true));
});
// Reset polyline options to default values.
consumerMapStyle.setPolylineStyleOptions(PolylineType.ACTIVE_ROUTE, null);
consumerMapStyle.setPolylineStyleOptions(PolylineType.REMAINING_ROUTE, null);
Kotlin
// Initializing polyline options.
consumerController
.getConsumerMapStyle()
.addOnSuccessListener({ consumerMapStyle ->
{
consumerMapStyle.setPolylineStyleOptions(
PolylineType.ACTIVE_ROUTE,
PolylineOptions().color(Color.BLUE)
)
consumerMapStyle.setPolylineStyleOptions(
PolylineType.REMAINING_ROUTE,
PolylineOptions().color(Color.BLACK).width(5).visible(true)
)
}
})
// Reset polyline options to default values.
consumerMapStyle.setPolylineStyleOptions(PolylineType.ACTIVE_ROUTE, null)
consumerMapStyle.setPolylineStyleOptions(PolylineType.REMAINING_ROUTE, null)
קווים פוליגוניים המודעים לתנועה
כברירת מחדל, שכבת התנועה של הקו הפוליגוני מושבתת. כשהיא מופעלת, קטעים שמייצגים קטעים של תנועה לא רגילה משורטטים מעל לקו הפוליגוני של המסלול z-index PolylineOptions.getZIndex() בתוספת קיזוז בהתאם למצב התנועה.
מצב התנועה מיוצג כאחת מארבעה סוגי מהירות. אפשר להתאים אישית את הצבע של כל סוג מהירות.
כדי להפעיל את 'קווים פוליגוניים המודעים לתנועה', יש ליצור אובייקט TrafficStyle
שלאחר מכן יועבר אל ConsumerMapStyle
בקריאה ל-setPolylineTrafficStyle()
.
דוגמה
Java
// TrafficStyle is part of the Consumer SDK.
TrafficStyle trafficStyle = TrafficStyle.builder()
.setTrafficVisibility(true)
.setTrafficColor(SpeedType.NO_DATA, Color.GREY)
.setTrafficColor(SpeedType.NORMAL_VALUE, Color.BLUE)
.setTrafficColor(SpeedType.SLOW_VALUE, Color.ORANGE)
.setTrafficColor(SpeedType.TRAFFIC_JAM, Color.RED)
.build();
consumerMapStyle.setPolylineTrafficStyle(PolylineType.ACTIVE_ROUTE, trafficStyle);
Kotlin
// TrafficStyle is part of the Consumer SDK.
val trafficStyle =
TrafficStyle.builder()
.setTrafficVisibility(true)
.setTrafficColor(SpeedType.NO_DATA, Color.GREY)
.setTrafficColor(SpeedType.NORMAL_VALUE, Color.BLUE)
.setTrafficColor(SpeedType.SLOW_VALUE, Color.ORANGE)
.setTrafficColor(SpeedType.TRAFFIC_JAM, Color.RED)
.build()
consumerMapStyle.setPolylineTrafficStyle(PolylineType.ACTIVE_ROUTE, trafficStyle)
כוונון זום המצלמה כדי להתמקד במסע
לחצן 'המיקום שלי' שמובנה ב-SDK של מפות Google כברירת מחדל ממרכז את המצלמה למיקום המכשיר. אם יש פעילות פעילה של התחלת נסיעה והזמנה, כדאי למרכז את המצלמה כדי להתמקד לאורך התהליך ולא במיקום המכשיר.
פתרון מובנה ל-Android SDK לצרכנים: Autocamera
כדי לאפשר לכם להתמקד במסע במקום במיקום המכשיר, SDK לצרכן כולל תכונת Autocamera שמופעלת כברירת מחדל. המצלמה עושה זום כדי להתמקד במסלול 'התקדמות הנסיעה' ו'הזמנה' ובנקודת הדרך הבאה בנסיעה.
התאמה אישית של התנהגות המצלמה
אם אתם צריכים שליטה רבה יותר בהתנהגות המצלמה, תוכלו להשבית או להפעיל את Auto Camera באמצעות ConsumerController.setAutoCameraEnabled()
.
ConsumerController.getCameraUpdate()
מחזירה את גבולות המצלמה המומלצים באותו רגע. עכשיו תוכלו לספק את CameraUpdate
כארגומנט ל-GoogleMap.moveCamera()
או ל-GoogleMap.animateCamera()
.