נתוני גרסה של Consumer SDK עבור Android

בקטע הזה מפורטים נתוני הגרסה של Consumer SDK ל-Android.

הודעה: הקפאת התמיכה ברמות API‏ 23, 24 ו-25

בהתאם למדיניות התמיכה בגרסאות של מערכות הפעלה לנייד, אנחנו מפסיקים את התמיכה ב-Android בגרסאות 6 ו-7 (רמות API‏ 23, 24 ו-25) בגרסאות הראשיות הבאות של Consumer SDK ל-Android.

גרסאות של Consumer SDK ל-Android שיושקו החל מהרבעון הרביעי של 2025 יתמכו ב-Android 8 (רמת API‏ 26) ומעלה. גרסאות קודמות של SDK ימשיכו לתמוך ב-Android 6 ו-7.

אם לא ציינתם מספר גרסה בתלויות, סביבת הפיתוח המשולבת (IDE) תטען את גרסת ה-SDK החדשה ביותר, וגרסאות build חדשות של האפליקציה לא יתמכו ב-Android 6 ו-7.

כדי לשלוט במועד שבו מעלים את מערכת ההפעלה המינימלית הנתמכת לגרסאות חדשות של האפליקציה, צריך לציין גרסה של Consumer SDK ל-Android בתלות בגרסת ה-build של האפליקציה.

‫5.0.0 (9 בנובמבר 2026)

  • הוספנו תמיכה במצב מלא של R8. כללי ProGuard של ה-SDK שומרים עכשיו את מחלקות הספק של gRPC שנטענות על ידי השתקפות, כך שאפליקציות שמפעילות את המצב המלא של R8 לא נכשלות יותר בהפעלה עם Unable to load OkHttpChannelProvider.

תיקוני באגים

  • תוקנה בעיה שבה ניסיונות חיבור מאובטח ל-Fleet Engine נשארו בהמתנה ללא הגבלת זמן אם שרת proxy של ספק ביניים נתקע במהלך הגדרת החיבור, מה שמנע את הרענון של עדכוני סטטוס הנסיעה ומעקב אחר הרכב ברשתות סלולריות מסוימות. עכשיו Consumer SDK אוכף זמן קצוב לתפוגה של החיבור ומתאושש באופן אוטומטי בחיבור חדש.

שינויים בתלות ובהגדרות האישיות

החל מגרסה 5.0.0 של Consumer SDK ל-Android, יש דרישות מינימום חדשות:

  • הגרסה המינימלית של Android שנתמכת היא Android 7.0 (רמת API‏ 24).
  • צריך לשדרג את האפליקציות ל-Kotlin 2.4.

עכשיו ה-SDK מבוסס על הכלים הבאים:

  • שדרוג של הפלאגין של Android Gradle לגרסה 9.2.0.
  • שדרגנו את Gradle לגרסה 9.4.1.

‫4.1.0 (26 במאי 2026)

  • שיפורים פנימיים: העברת אחסון הנתונים הפנימי ל-Jetpack DataStore.

שינויים בתלויות ובהגדרות

  • גרסת התלות של Kotlin שודרגה לגרסה 2.3.0.
  • שדרגנו את הפלאגין של Android Gradle לגרסה 8.13.2.
  • שדרוג של Gradle לגרסה 8.13.
  • שדרוג ספריית Desugar לגרסה 2.1.5.
  • הגרסה של Maps SDK עודכנה ל-20.0.0, ויחסי התלות הבאים של GMS Core עודכנו:
    • ‫play-services-location: ‏ 21.3.0
    • play-services-tasks: 18.4.1
    • play-services-common: 18.1.0
    • play-services-basement: 18.1.0
  • נוספו יחסי תלות של Jetpack Datastore‏ (androidx.datastore:datastore-core:1.2.0, androidx.datastore:datastore-guava:1.2.0).

‫4.0.0 (3 באוקטובר 2025)

  • שיפורים פנימיים.

‫3.2.0 (26 ביוני 2025)

  • שיפורים ברישום הפנימי של נתונים.

שינויים בתלויות ובהגדרות

  • החל מגרסה 3.2.0 של Consumer SDK ל-Android, צריך לשדרג את האפליקציות ל-Kotlin 2.1.

תיקוני באגים

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

‫3.1.0 (10 במרץ 2025)

  • שיפורים ברישום הפנימי של נתונים.

‫3.0.0 (6 בדצמבר 2024)

שינויים בתלות ובהגדרות האישיות

‫2.99.0 (25 בנובמבר 2024)

תיקוני באגים

  • תיקון שגיאת ANR שמתרחשת כשההפעלה של ConsumerApi.cleanUp() נמשכת יותר מדי זמן. ההשקה תתבצע בהדרגה (החל מ-0%) אחרי שהגרסה תוטמע.
  • תוקנה בעיה שבה נהגים קיבלו שגיאות gRPC עם הקוד "INTERNAL" וההודעה "Panic!‎ זה באג!". ההשקה תתבצע בהדרגה (החל מ-0%) אחרי שהגרסה תוטמע.

‫2.3.0 (2 באוגוסט 2024)

שינויים ב-API

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

  • מוסיפים את השיטה getServerTimeMillis() ל-VehicleLocation כדי לקבוע את השעה שבה עדכון לגבי מיקום התקבל ב-Fleet Engine.

‫2.2.0 (7 במאי 2024)

שינויים ב-API

  • הוספנו API לתמיכה בשילוב של Jetpack Compose. זו תכונה ניסיונית. כדי לקבל פרטים על שילוב עם Jetpack Compose, פנו לנציג שלכם.

‫2.1.0 (17 בינואר 2024)

תיקוני באגים

  • תיקון קריסה שמתרחשת כשמפעילים את ה-SDK יותר מפעם אחת במהלך מחזור החיים של האפליקציה.

שינויים ב-API

  • הוספת פריט Method לאחזור המופע של GoogleMap שנוצר על ידי ה-SDK (ConsumerGoogleMap.getGoogleMap()).
  • הוספת API לאחזור המופעים של Marker שנוצרו על ידי ה-SDK כדי לייצג את הרכב (ConsumerController.getConsumerMarker()).
  • הוספת API לקבלת עדכונים צפויים של זמן ומרחק מהלקוח במהלך שיתוף הנסיעה (ProjectedRouteEta).

‫1.99.2 (3 בנובמבר 2023)

  • תיקון קריסה שמתרחשת כשמפעילים את ה-SDK מתהליך מרוחק, בנפרד מהאפליקציה.

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

  • תיקון באג שגורם לחלק הראשון של נסיעה רצופה להיחתך כשהחלק השני עובר באותו כביש.

בעיות

  • הפונקציה ConsumerApi.initialize() גורמת לחריגה אם מפעילים אותה כשמופע API כבר קיים. כדי לעקוף את הבעיה, קודם צריך להפעיל את ConsumerApi.getInstance() ולהעריך את הערך המוחזר של Task כדי לקבוע אם כבר קיים מופע של API.

‫2.0.0 (15 בספטמבר 2023)

הודעה: שינויים בתוכנה שעלולים לגרום לכשלים

  • דרישת רמת ה-API המינימלית עודכנה מ-21 ל-23.

  • עדכון הדרישה לגרסת Maps SDK מגרסה 17.0.0 לגרסה 18.1.0

  • הגרסה המינימלית הנדרשת של ספריית Kotlin הרגילה עודכנה מגרסה 1.6.10 לגרסה 1.9.0

  • עדכון הגרסאות של יחסי התלות של Google Play Services

    • הגרסה המינימלית הנדרשת של הספרייה play-services-base עודכנה מגרסה 18.0.1 לגרסה 18.2.0.

    • הגרסה המינימלית הנדרשת של הספרייה play-services-basement עודכנה מגרסה 18.0.0 לגרסה 18.2.0

    • הגרסה המינימלית הנדרשת של הספרייה play-services-location עודכנה מגרסה 17.0.0 לגרסה 21.0.1

    • הגרסה המינימלית הנדרשת של הספרייה play-services-tasks עודכנה מגרסה 18.0.1 לגרסה 18.0.2.

  • מוסיפה את הספרייה androidx.room:room-runtime עם דרישת סף לגרסה 2.5.2 ומעלה

  • מעדכנים את הגרסאות של יחסי התלות הבאים

    • הגרסה המינימלית הנדרשת של הספרייה android-maps-utils עודכנה מגרסה 0.4.2 לגרסה 3.5.2

    • הגרסה המינימלית הנדרשת של com.google.android.datatransport:transport-backend-cct עודכנה מגרסה 3.0.0 לגרסה 3.1.9

    • הגרסה המינימלית הנדרשת של com.google.android.datatransport:transport-runtime עודכנה מגרסה 3.0.1 לגרסה 3.1.9

    • הגרסה המינימלית הנדרשת של androidx.lifecycle:lifecycle-extensions עודכנה מגרסה 2.0.0 לגרסה 2.2.0

    • הגרסה המינימלית הנדרשת של androidx.lifecycle:lifecycle-common-java8 עודכנה מגרסה 2.0.0 לגרסה 2.6.1

    • הגרסה המינימלית הנדרשת של androidx.appcompat:appcompat עודכנה מגרסה 1.0.0 לגרסה 1.6.1

    • הגרסה המינימלית הנדרשת של androidx.fragment:fragment עודכנה מגרסה 1.0.0 לגרסה 1.6.1

  • הסרה של ממשקי ה-API הבאים שהוצאו משימוש: ConsumerTrip,‏ ConsumerTripCallback,‏ ConsumerTripManager,‏ ConsumerTripOptions. הם הוחלפו ב-TripModel,‏ TripModelCallback,‏ TripModelManager ו-TripModelOptions.

  • באפליקציות שמשתמשות ב-Consumer SDK, צריך להגדיר עכשיו targetSdkVersion של API 31 ומעלה, ו-compileSdkVersion של API 33 ומעלה.

  • באפליקציות שמשתמשות ב-Consumer SDK צריך עכשיו להפעיל תמיכה בספריית Java 8. הוראות לעדכון זמינות בכתובת https://developer.android.com/studio/write/java8-support.

  • אפליקציות שמשתמשות ב-Proguard או ב-Dexguard צריכות לעבור ל-R8. מידע נוסף זמין בכתובת https://developer.android.com/build/shrink-code.

  • באפליקציות שמשתמשות ב-Consumer SDK צריך להפעיל את התהליך להסרת סוכר תחבירי. הוראות מפורטות זמינות בכתובת https://developer.android.com/studio/write/java8-support#library-desugaring.

  • ה-method‏ ConsumerApi.initialize() זורק עכשיו חריג אם הוא מופעל כשכבר נוצר מופע API. צריך להשתמש ב-Task שמוחזר על ידי ConsumerApi.getInstance() כדי לקבוע אם יש מופע API שנוצר לפני כן.

הודעה: הוצאה משימוש של ממשקי API

  • הוצאה משימוש של מחלקות ההערות Trip.TripStatus ו-Trip.TripType, והוספה של מחלקות ההערות TripInfo.TripStatus ו-TripInfo.TripType במקומן.

    • כחלק מהשינוי הזה, הוצאנו משימוש את TripModelCallback#onTripStatusUpdated(TripInfo tripInfo, @Trip.TripStatus int status) והוספנו את TripModelCallback#onTripStatusUpdate(TripInfo tripInfo, @TripInfo.TripStatus int status) במקומו.

    • כחלק מהשינוי הזה, הוצאנו משימוש את TripInfo#getTripStatus() והוספנו את TripInfo#getCurrentTripStatus() במקומו.

    • כחלק מהשינוי הזה, הוצאנו משימוש את TripInfo#getTripType() והוספנו את TripInfo#getCurrentTripType() במקומו.

  • הוצאה משימוש של המחלקה Trip.

שינויים אחרים ותיקוני באגים

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

  • תמיכה בטווח גרסאות של Maps SDK, מגרסה 18.1.0 (כולל) עד גרסה 19.0.0 (לא כולל).

  • תיקון השגיאה "deadline exceeded" (המועד האחרון חלף) בתקשורת הפנימית בין ה-SDK לבין הקצה העורפי של Google.

  • תיקון בעיית עיבוד במסכים קטנים ובמצב תמונה בתוך תמונה.

מדריך להעברת נתונים (מיגרציה)

‫1.99.1 (31 באוגוסט 2023)

תיקוני באגים

  • תיקון קריסה שמתרחשת כשהפעילות או החלק של מארח ה-SDK נהרסים.

  • תיקון קריסה שמתרחשת כשהממדים של MapView הם 0 (גובה או רוחב).

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

שיפורים

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

‫1.99.0 (22 ביוני 2023)

תיקוני באגים

  • תיקון בעיית עיבוד במסכים קטנים ובמצב תמונה בתוך תמונה.

  • תיקון הבהובים של הרכב במהלך שיתוף הנסיעה.

‫1.2.1 (7 ביוני 2023)

תיקוני באגים

  • תוקן באג שגרם לרכב להבהב במהלך שיתוף הנסיעה.

‫1.2.0 (21 בנובמבר 2022)

תיקוני באגים

  • תוקן באג שגרם לדיווח על תנועה ריקה בקריאה החוזרת (callback) של onTripActiveRouteTrafficUpdated.

תכונות חדשות

  • התכונה "קווים פוליגוניים עם מידע על מצב התנועה" זמינה עכשיו לכלל המשתמשים (GA).

‫1.1.2 (27 באוקטובר 2022)

תיקוני באגים

  • תיקון באג שגורם לקו הפוליגוני של המסלול להיעלם אחרי שמתחילים JourneySharingSession יותר מפעם אחת בשביל TripModel.

הודעה: הקפאת התמיכה ב-Android 5‏ (25 ביולי 2022)

בגרסה 1.1.1 של ה-SDK, אנחנו מספקים תמיכה למשך שנה נוספת באפליקציות שפועלות ב-Android 5, גם ברמת API‏ 21 וגם ברמת API‏ 22.

מה זה אומר:

  • ערכת ה-SDK לצרכן שפועלת באפליקציות ל-Android תתמוך בגרסה מינימלית של Android 5 (רמת API ‏21) עד 30 ביוני 2023.

  • אחרי 30 ביוני 2023, נתמוך רק ב-Android API ברמה 23 ומעלה. במילים אחרות, אחרי התאריך הזה נפסיק לתמוך ברמות API ‏21 ו-22 של Android בכל הגרסאות של ה-SDK. כלומר, באגים שקשורים ל-Android 21 או 22 בכל גרסת SDK (כולל 4.x) לא יתוקנו, ואנחנו לא מבטיחים שערכות ה-SDK יפעלו כמו שצריך.

‫v1.1.1‏ (25 ביולי 2022)

שינוי תלות

  • מורידה את רמת ה-API המינימלית הנתמכת ב-Android ל-21.

גרסה 1.1.0 (28 באפריל 2022)

  • שיפורים פנימיים.

גרסה 1.0.19 (17 במרץ 2022)

תיקוני באגים

  • תוקנה דליפת זיכרון במחלקה ConsumerApi.

גרסה 1.0.14 (30 בנובמבר 2021)

רמת ה-API המינימלית שנתמכת ב-Android היא עכשיו 23.

שינויים ב-API

  • שינויים בסוגים ConsumerTrip ו-ConsumerTripManager.

    • שינינו את השמות של כמה שיטות כדי שהמשמעות שלהן תהיה ברורה יותר, וכדי להתאים אותן לפלטפורמת iOS.
  • שינויים ב-ConsumerTripCallback, ב-ConsumerTrip וב-TripInfo.

    • שינינו כמה שמות של מחלקות כדי ליצור התאמה ל-iOS. הוספנו את TripModel, TirpModelManager ו-TripModelOptions כדי להוציא משימוש את ConsumerTrip, ConsumerTripManager ו-ConsumerTripOptions.

    • ניקינו כמה שמות של שיטות. שינינו או הוספנו הערות JavaDoc לשיטות כדי להבהיר את המשמעות שלהן.

    • טיפול משופר בשגיאות.

התאמה אישית של הסגנון

  • רכיבי wrapper מדור קודם שהוצאו משימוש

    • הוצאנו משימוש את MarkerStyleOptions ו-PolylineStyleOptions והחלפנו אותם ב-MarkerOptions וב-PolylineOptions, שמשותפים עם Maps SDK.

מעקב אחרי קריסות

  • נוספו זיהוי קריסות ורישום ביומן.

    • הוספנו אפשרות לבטל את ההסכמה לפונקציונליות הזו. השינוי הזה בוצע כחלק ממאמץ רחב יותר של Geo לניטור קריסות.

שינויים באימות

  • הסרת שיטות מיותרות מממשקי האימות.
    • הסרנו את הפרמטר ServiceType.

גרסה 0.9.28 (18 במאי 2021)

שינויים ב-API

  • כל השיטות של ConsumerTripCallback עודכנו כך שישתמשו ב-TripInfo כפרמטר.
  • הוספנו את ConsumerTrip.isRefreshing(), שמציין אם ConsumerTrip מעדכן את עצמו באופן פעיל עם מידע עדכני על הנסיעה מ-Fleet Engine.
  • ההוספה של ConsumerTripCallback.onTripRemainingRouteDistanceUpdated() בוצעה בהצלחה.
  • ההוספה של ConsumerTripCallback.onTripRemainingRouteUpdated() בוצעה בהצלחה.
  • החלפת סוגי החזרה של Guava‏ (ImmutableSet, ImmutableList) במחלקות מקבילות של java.util.
  • שינויים בשמות החבילות:

    • com.google.android.libraries.ridesharing.common.AuthTokenContext -> com.google.android.libraries.ridesharing.consumer.auth.AuthTokenContext
    • com.google.android.libraries.ridesharing.common.AuthTokenFactory -> com.google.android.libraries.ridesharing.consumer.auth.AuthTokenFactory
    • com.google.android.libraries.ridesharing.common.FleetEngineServiceType -> com.google.android.libraries.ridesharing.consumer.auth.FleetEngineServiceType - com.google.android.libraries.ridesharing.common.model.Trip

                                  ->
                                                                  com.google.android.libraries.ridesharing.consumer.model.Trip
      
                                  -   com.google.android.libraries.ridesharing.common.model.Vehicle
      
                                                          ->
                                      com.google.android.libraries.ridesharing.consumer.model.Vehicle
      

שינויים בהטמעה

  • תוקן מרוץ תהליכים שבו ה-SDK עלול לקרוס מאינטראקציות עם המפה לפני שהיא מוכנה.
  • ערכת ה-SDK כבר לא מכילה עותק לא מעורפל של io.grpc.
  • תוקן באג שגרם להבהוב של קווים פוליגוניים של תנועה במכשירים מסוימים. מעכשיו, לקטעי התנועה יהיו קצוות מעוגלים.

‫v0.9.15 (7 באוקטובר 2020)

שינויים ב-API

  • בגרסה הזו אנחנו משיקים את הקווים הפוליגוניים שמתחשבים במצב התנועה. - הוספנו את TripInfo.getActiveRouteTraffic() ואת TripInfo.getRemainingRouteTraffic().
    • הוספנו את ConsumerTripCallback.onTripActiveRouteTrafficUpdated() ו-ConsumerTripCallback.onTripRemainingRouteTrafficUpdated() כדי לציין מתי התנועה השתנתה.
    • נוסף PolylineStyleOptions להתאמה אישית של התנועה (setTrafficEnabled(), setTrafficColorNoData(), setTrafficColorNormal(), setTrafficColorSlow(), setTrafficColorTrafficJam()).
    • התכונה PolylineStyleOptions.TRAFFIC_Z_INDEX_ADDITION נחשפה.
    • ההוספה של TripWaypoint.getTrafficData() בוצעה בהצלחה.
    • נוסף סוג נתונים אחד (TrafficData).
    • ההוספה של ConsumerController.hideAllSessions() בוצעה בהצלחה. הפונקציה ConsumerController.showSession() לא מקבלת יותר null כארגומנט.

‫v0.9.9‏ (15 ביולי 2020)

שינויים ב-API

  • זהו שינוי משמעותי שמציג ארכיטקטורה מודולרית עם קשר ברור יותר בין שכבת הנתונים בלבד (לדוגמה, ConsumerTripManager) לבין שכבת ממשק המשתמש (לדוגמה, JourneySharingSession). למידע על מעבר לארכיטקטורה החדשה, עיינו במדריך להעברת נתונים (מיגרציה) של מודולריזציה. - האובייקט ConsumerTrip מתקבל עכשיו מ-ConsumerTripManager.getTrip().
    • השם של ConsumerTrip.unregisterCallback השתנה לשם ConsumerTrip.unregisterTripCallback.
    • השם של ConsumerTrip.isCallbackRegistered השתנה לשם ConsumerTrip.isTripCallbackRegistered.
    • הוספת את ConsumerTrip.setConsumerTripOptions() ואת ConsumerTrip.getConsumerTripOptions().
    • בוצעה הסרה של ConsumerTrip.setAutoRefreshInterval().
  • הסרנו ממשקי API שלא קשורים לשיתוף נסיעה.
    • הוסרה מפת צפיפות הרכבים.
    • הוסר מצב התצוגה המקדימה של הנסיעה.
    • הוסר מצב הבחירה של האיסוף.
    • מצב הבחירה של נקודת האיסוף הוסר.
    • הסרנו את סוגי הסמנים הבאים: SELECTED_PICKUP_POINT, SUGGESTED_PICKUP_POINT, HIGHLIGHTED_PICKUP_POINT ו-SELECTED_DROPOFF_POINT.
  • שינינו את OnConsumerMarkerClickCallback ו-ConsumerMapReadyCallback מממשקים למחלקות מופשטות.
  • הוספנו את ConsumerController.getCameraUpdate(), ConsumerController.isAutoCameraEnabled() ו- ConsumerController.enableAutoCamera().
  • הסרנו את ה-FAB בהתאמה אישית ואת ה-methods שמשויכות אליו (ConsumerController.isMyLocationFabEnabled ו-ConsumerController.setMyLocationFabEnabled).

שינויים בהטמעה

  • ConsumerTripCallback, בין אם הוא רשום עם LifecycleOwner ובין אם לא, לא מבטל יותר את הרישום באופן אוטומטי ב-TripStatus.COMPLETE או ב-TripStatus.CANCELED.
  • התכונה AutoCamera מופעלת עכשיו כברירת מחדל, והיא לא מופעלת או מושבתת מעצמה. בעבר, AutoCamera הופעלה מחדש באופן אוטומטי ב-TripStatus.ARRIVED_AT_PICKUP והושבתה כשהמשתמשים ביצעו פעולות במפה במהלך שיתוף הנסיעה.
  • השיפורים הבאים בוצעו באנימציה של הרכב בשיתוף הנסיעה:
    • האנימציה של שיתוף הנסיעה מטפלת עכשיו במצב שבו רכב יכול לנסוע בחזרה לאורך מסלול שכבר עבר.
    • הרכב ינוע עכשיו בקו ישר במקום לבצע אינטרפולציה של המסלול בין נקודות, כשהאלגוריתם יקבע שזה מתאים.
  • אין יותר צורך בהרשאות של FINE_LOCATION.

שינויים אחרים

  • עדכנו את הגרסאות של יחסי התלות הבאים:
    • com.google.android.datatransport:transport-api:2.2.0
    • com.google.android.datatransport:transport-backend-cct:2.2.0
    • com.google.android.datatransport:transport-runtime:2.2.0

v0.9.1 (23 במרץ 2020)

שינויים ב-API

  • הוספת את TripInfo.getVehicleId(), TripInfo.getNumberOfPassengers(), TripInfo.getIntermediateDestinationIndex(), TripInfo.getTripActiveRoute() ו-TripInfo.getTripRemainingRoute().
  • הוספנו את המחלקה options שמשמשת במהלך האתחול של ConsumerApi, ומאפשרת להגדיר את הכתובת של FleetEngine באופן דינמי. אם לא קוראים ל-API עם ערך FleetEngine, הוא מנסה לאחזר אותו מהמניפסט של Android, או חוזר לערך ברירת המחדל.

שיפורים

  • הקו הפוליגוני של המסלול לא מוצג כשסטטוס הנסיעה הוא ARRIVED_AT_PICKUP.
  • שיפרנו את מעקב הרכב מחוץ למסלול (נדרשת גרסה 1.15 של DriverSDK):
    • מעקב אחר הרכב לא מצמיד את הרכב למסלול כשהרכב חולף על פני נקודת האיסוף.
    • מעקב אחר הרכב מאפשר להציג את הרכב מחוץ לכביש, למשל בחניונים שלא מופיעים במפה.
  • סמל הרכב מתעדכן עכשיו כשהיעד של הנהג לא תואם ליעד ב-Fleet Engine.

v0.8.6 (16 בדצמבר 2019)

שינויים ב-API

  • ההוספה של TripInfo.getVehicleLocation() בוצעה בהצלחה.

  • הסטטוס של ConsumerMapView כבר לא סופי.

שינויים בהטמעה

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

שינויים אחרים

  • צריך להוסיף יחסי תלות חדשים. פרטים נוספים זמינים בקובץ ‎ .pom.

    • com.google.android.datatransport:transport-api:2.0.0
    • com.google.android.datatransport:transport-backend-cct:2.0.2
    • com.google.android.datatransport:transport-runtime:2.0.0
  • נוספו יומנים לזמן האחזור של בקשות לנסיעות.

  • נוספו יומנים לשגיאות בתגובות לנסיעות.

הערות

  • החל מגרסה 0.8.1, Consumer SDK ל-Android נשלח כארכיון ZIP שעבר המרה ל-Jetpack. במאמר Jetifier: Reverse mode מוסבר איך להסיר את Jetifier.

‫v0.8.1 (13 בספטמבר 2019)

תכונות חדשות

שינויים ב-API

  • הוספנו את הפונקציה ConsumerController.disableAutoCamera() כפונקציה ההפוכה של centerMapForState().

  • הפונקציה VehicleLocation.getUpdateTime() מחזירה עכשיו ערך מסוג Long שמייצג את חותמת הזמן (באלפיות השנייה).

  • הממשק AuthTokenFactory פושט כדי לחשוף שיטה אחת ליצירת טוקנים. השינוי של AuthTokenFactory מממשק למחלקה מופשטת כדי לאפשר תאימות לדורות קודמים ב-Java7. השינוי הזה תואם לדורות קודמים, אבל השיטות הישנות ליצירת טוקן לשירות יחיד הוצאו משימוש, ובסופו של דבר יוסרו.

שינויים בהטמעה

  • הנכסים מיושרים עכשיו למרכז הסמל, כך שאין יותר הסטה של הצל.

  • ‫setState ל-JOURNEY_SHARING onStartTripMonitoring() במקום להמתין לסטטוס של הנסיעה במעקב.

  • תמיד מחזיר נתונים עבור עדכון נתוני הנסיעה הראשון, גם כשנתוני הנסיעה לא מסונכרנים.

  • הוספנו את Android Map Utils כתלות שסופקה.

תיקוני באגים

  • תוקן תחביר הייצוא של proguard שבור עבור grpc keep.

‫v0.7.0 (7 באוגוסט 2019)

תכונות חדשות

  • תמיכה במספר יעדים בשיתוף נסיעה.

שינויים ב-API

  • ‫methods חדשים ל-ConsumerTripCallback.

    • onTripIntermediateDestinationsUpdated().
    • onTripETAToNextTripWaypointUpdated().
  • ‫methods חדשים מסוג ConsumerController.

    • getIntermediateDestinations().
    • setIntermediateDestinations(List<TerminalLocation> intermediateDestinations).
  • ‫TripStatuses חדש.

    • TripStatus.ENROUTE_TO_INTERMEDIATE_DESTINATION.
    • TripStatus.ARRIVED_AT_INTERMEDIATE_DESTINATION.
  • ‫TripWaypoint getters חדשים.

    • getETAMillis().
    • getDistanceMeters().
  • הוספת את הכיתה TripInfo.

    • אפשר לקבל את הערך של TripInfo לנסיעה הפעילה באמצעות ConsumerTripManager.getActiveTripInfo().
  • ההוספה של WaypointType.INTERMEDIATE_DESTINATION בוצעה בהצלחה.

  • ההוספה של MarkerType.TRIP_INTERMEDIATE_DESTINATION בוצעה בהצלחה.

  • נוצר ConsumerMapState.JOURNEY_SHARING ממיזוג של ConsumerMapStates ENROUTE_TO_PICKUP, ARRIVED_AT_PICKUP, ENROUTE_TO_DROPOFF ו- COMPLETE.

    • הטבלה StateChangeCallbacks עודכנה.

    • ההוספה של onStateJourneySharing() בוצעה בהצלחה.

    • בוצעה הסרה של onStateWaitingForPickup(),‏ onStateDriverArrived(),‏ onStateEnroute() ו-onStateEndofTrip().

תיקוני באגים

  • תוקן באג שגרם לכך שהמסלול לא נחתך למיקום הרכב כשמעקב הנסיעה מתחיל באמצע נסיעה פעילה (לא בתחילת המסלול).

  • תוקן באג שבו לא הופעלו קריאות חוזרות (callbacks) של נסיעות למאזינים שרשומים ב-Tripmanager אחרי ש-TripManager כבר אחזר את נתוני הנסיעה.

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

שיפורים

  • מאכלסים את נקודת הציון הנותרת הראשונה בנתוני הנהג (רשימת נקודות הציון הנותרות מוחזרת מ-ConsumerTripCallback.onTripRemainingWaypointsUpdated ומ-TripInfo.getRemainingWaypoints().

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

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

‫v0.6.1‏ (26 ביוני 2019)

תכונות חדשות

  • תמיכה בשיתוף נסיעות ב-Carpool.

שינויים ב-API

  • הפונקציה ConsumerController.getConsumerMapStyle() מחזירה עכשיו את הערך ConsumerMapStyle במקום Task<ConsumerMapStyle>.

  • ההוספה של PolylineStyle.setZIndex() בוצעה בהצלחה.

תיקוני באגים

  • האנימציה של המסלול מתרחשת עכשיו רק כשקטע המסלול מסונכרן, וכך חוויית המשתמש משתפרת.

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

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

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

שיפורים

  • עכשיו חושפים את המחלקה Status של gRPC עם שיטות לא מעורפלות.

גרסה 0.5.1.01 (17 במאי 2019)

תכונות חדשות

  • תמיכה בשיתוף נסיעות ברצף.

שינויים ב-API

  • כיתה חדשה של ConsumerController.

PolylineType

ערך ישן ערך חדש
TRIP_PREVIEW_AUTO_ROUTE PREVIEW_AUTO_ROUTE
TRIP_PREVIEW_TAXI_ROUTE PREVIEW_TAXI_ROUTE
TRIP_PREVIEW_TRUCK_ROUTE PREVIEW_TRUCK_ROUTE
TRIP_PREVIEW_TWO_WHEELER_ROUTE PREVIEW_TWO_WHEELER_ROUTE
TRIP_ROUTE ACTIVE_ROUTE
REMAINING_ROUTE

ConsumerTripCallback

ערך ישן ערך חדש
onTripRouteUpdated onTripActiveRouteUpdated
onTripRemainingDistanceUpdated onTripActiveRouteRemainingDistanceUpdated
onTripRemainingWaypointsUpdated()

ConsumerController

  • עכשיו אפשר להגדיר קריאות חוזרות (callbacks) למצבים בלי להיכנס למצב.
שיטה התקשרות חזרה
startPickupSelection setPickupSelectionCallback
startDropoffSelection setDropoffSelectionCallback
startTripPreview setTripPreviewSelectionCallback
  • השדה ConsumerController.setLanguage(String languageCode) מאפשר להגדיר את השפה שבה נעשה שימוש בקריאות ל-FleetEngine (למשל, לתיאורים של נקודות איסוף).

שיפורים

  • במצב בחירת נקודת האיסוף יש עכשיו סיכה שניתן לגרור.
  • הוסרה אנימציית המצלמה במצב INITIALIZE.
  • ‫ManagedChannelBuilder הוחלף בטקסט AndroidChannelBuilder.