ส่วนนี้มีบันทึกประจำรุ่นสำหรับ Consumer SDK สำหรับ Android
ประกาศ: หยุดให้บริการ API ระดับ 23, 24 และ 25
ตามนโยบายการรองรับเวอร์ชันระบบปฏิบัติการบนอุปกรณ์เคลื่อนที่ เราจะ หยุดการรองรับ Android 6 และ 7 (API ระดับ 23, 24 และ 25) ใน Consumer SDK สำหรับ Android เวอร์ชันหลักที่กำลังจะเปิดตัว
Consumer SDK สำหรับ Android เวอร์ชันที่เผยแพร่ตั้งแต่ไตรมาสที่ 4 ของปี 2025 จะรองรับ Android 8 (API ระดับ 26) เป็นอย่างน้อย SDK เวอร์ชันก่อนหน้า จะยังคงรองรับ Android 6 และ 7 ต่อไป
หากการอ้างอิงไม่ได้ระบุหมายเลขเวอร์ชัน IDE จะโหลด SDK เวอร์ชันล่าสุด และบิลด์ใหม่ของแอปจะไม่รองรับ Android 6 และ 7
ระบุเวอร์ชันของ Consumer SDK สำหรับ Android ในการอ้างอิงการสร้างแอปพลิเคชันเพื่อควบคุมเวลาที่คุณเพิ่มระบบปฏิบัติการขั้นต่ำที่รองรับสำหรับแอปเวอร์ชันใหม่
3.2.0 (26 มิถุนายน 2025)
- การปรับปรุงการบันทึกภายใน
การเปลี่ยนแปลงการกำหนดค่าและการขึ้นต่อกัน
- ตั้งแต่เวอร์ชัน 3.2.0 ของ Consumer SDK สำหรับ Android เป็นต้นไป แอปจะต้อง อัปเกรดเป็น Kotlin 2.1
การแก้ไขข้อบกพร่อง
- ใช้ความยาวของเส้นหลายเส้นแทนระยะทางอากาศสำหรับการตัดสินใจเกี่ยวกับการเคลื่อนไหวภายใน
3.1.0 (10 มีนาคม 2025)
- การปรับปรุงการบันทึกภายใน
3.0.0 (6 ธันวาคม 2024)
การเปลี่ยนแปลงการกำหนดค่าและการขึ้นต่อกัน
- ตั้งแต่เวอร์ชัน 3.0.0 ของ Consumer SDK สำหรับ Android เป็นต้นไป แอปต้อง อัปเกรดเป็น Kotlin 2.0 ดูคำแนะนำในการย้ายข้อมูล Android Consumer SDK 3.0
- ตอนนี้ targetSdk สำหรับ Consumer SDK คือ Android 14 (API ระดับ 34) นี่เป็น ข้อกำหนดสำหรับแอปทั้งหมดที่เผยแพร่ใน Google Play Store ตั้งแต่เดือนสิงหาคม 2024 ดูปฏิบัติตามข้อกำหนดระดับ API เป้าหมายของ Google Play
2.99.0 (25 พฤศจิกายน 2024)
การแก้ไขข้อบกพร่อง
- แก้ไขข้อผิดพลาด ANR ที่เกิดขึ้นเมื่อ
ConsumerApi.cleanUp()
ใช้เวลานานเกินไปในการดำเนินการ เราจะทยอยเปิดตัวฟีเจอร์นี้ (เริ่มจาก 0%) เมื่อผสานรวมการเปิดตัวแล้ว - แก้ไขปัญหาที่คนขับได้รับข้อผิดพลาด gRPC ที่มีรหัส "INTERNAL" และข้อความ "Panic! นี่เป็นข้อบกพร่อง" เราจะทยอยเปิดตัวฟีเจอร์นี้ (เริ่มจาก 0%) เมื่อผสานรวมการเปิดตัวแล้ว
2.3.0 (2 สิงหาคม 2024)
การเปลี่ยนแปลง API
เพิ่มการรองรับการจัดรูปแบบ แผนที่บนระบบคลาวด์ ซึ่งช่วยให้คุณสร้างประสบการณ์แผนที่ถนนที่ปรับแต่งแล้วสำหรับผู้ใช้ได้โดยไม่ต้องอัปเดตโค้ดของแอปทุกครั้งที่ทำการเปลี่ยนแปลงรูปแบบแผนที่ ดูข้อมูลเพิ่มเติมได้ที่จัดรูปแบบแผนที่ด้วยการจัดรูปแบบแผนที่ในระบบคลาวด์
เพิ่ม
getServerTimeMillis()
method ไปยังVehicleLocation
เพื่อระบุ เวลาที่ Fleet Engine ได้รับการอัปเดตตำแหน่ง
2.2.0 (7 พฤษภาคม 2024)
การเปลี่ยนแปลง API
- เพิ่ม API การสนับสนุนสำหรับการผสานรวม Jetpack Compose นี่เป็นฟีเจอร์เวอร์ชันทดลอง หากต้องการรายละเอียดเกี่ยวกับการผสานรวมกับ Jetpack Compose โปรดติดต่อ ตัวแทนของคุณ
2.1.0 (17 มกราคม 2024)
การแก้ไขข้อบกพร่อง
- แก้ไขข้อขัดข้องที่เกิดขึ้นเมื่อมีการเริ่มต้น SDK มากกว่า 1 ครั้งตลอดวงจรการใช้งานแอปพลิเคชัน
การเปลี่ยนแปลง API
- แนะนําเมธอดเพื่อดึงข้อมูลอินสแตนซ์
GoogleMap
ที่สร้างโดย SDK (ConsumerGoogleMap.getGoogleMap()
) - เปิดตัว API เพื่อดึงข้อมูลอินสแตนซ์
Marker
ที่ SDK สร้างขึ้นเพื่อ แสดงถึงยานพาหนะ (ConsumerController.getConsumerMarker()
) - เปิดตัว API เพื่อรับการอัปเดตที่ไคลเอ็นต์คาดการณ์ไว้สำหรับเวลาและระยะทาง
ในระหว่างการแชร์การเดินทาง (
ProjectedRouteEta
)
1.99.2 (3 พฤศจิกายน 2023)
แก้ไขข้อขัดข้องที่เกิดขึ้นเมื่อเริ่มต้น SDK จากกระบวนการระยะไกล แยกจากแอปพลิเคชัน
แก้ไขข้อขัดข้องที่เกิดขึ้นขณะดำเนินการภาพเคลื่อนไหวของกล้องและไม่มี พื้นที่แนวตั้งหรือแนวนอนเพียงพอสำหรับการเว้นวรรค ปัญหานี้เกิดขึ้นเฉพาะใน เครื่องมือแสดงผลแผนที่เวอร์ชันล่าสุด
แก้ไขข้อบกพร่องที่ทำให้มีการตัดขาแรกของการเดินทางแบบไป-กลับออก เมื่อขาที่ 2 ผ่านถนนเดียวกัน
ปัญหา
ConsumerApi.initialize()
จะโยนข้อยกเว้นหากเรียกใช้เมื่อมีอินสแตนซ์ API อยู่แล้ว หากต้องการหลีกเลี่ยงปัญหานี้ ให้เรียกใช้ConsumerApi.getInstance()
ก่อน แล้วประเมินTask
ที่แสดงผลเพื่อดูว่ามีอินสแตนซ์ API อยู่แล้วหรือไม่
2.0.0 (15 กันยายน 2023)
ประกาศ: การเปลี่ยนแปลงที่ส่งผลกับส่วนอื่นในระบบ
อัปเดตข้อกำหนดระดับ API ขั้นต่ำจาก 21 เป็น 23
อัปเดตข้อกำหนดเวอร์ชัน Maps SDK จาก v17.0.0 เป็น v18.1.0
อัปเดตข้อกำหนดเวอร์ชันไลบรารีมาตรฐาน Kotlin ขั้นต่ำจาก v1.6.10 เป็น v1.9.0
อัปเดตเวอร์ชันทรัพยากร Dependency ของบริการ Google Play
อัปเดตข้อกำหนดเวอร์ชันไลบรารี play-services-base ขั้นต่ำจาก v18.0.1 เป็น v18.2.0
อัปเดตข้อกำหนดเวอร์ชันไลบรารี play-services-basement ขั้นต่ำ จาก v18.0.0 เป็น v18.2.0
อัปเดตข้อกำหนดเวอร์ชันคลัง play-services-location ขั้นต่ำ จาก v17.0.0 เป็น v21.0.1
เราได้อัปเดตข้อกำหนดเวอร์ชันไลบรารี play-services-tasks ขั้นต่ำจาก v18.0.1 เป็น v18.0.2
เพิ่มไลบรารี androidx.room:room-runtime โดยกำหนดข้อกำหนดเวอร์ชันขั้นต่ำ เป็น v2.5.2
อัปเดตเวอร์ชันของทรัพยากร Dependency ต่อไปนี้
ข้อกำหนดเวอร์ชันไลบรารี android-maps-utils ขั้นต่ำได้รับการอัปเดตจาก v0.4.2 เป็น v3.5.2
อัปเดตข้อกำหนดขั้นต่ำของ com.google.android.datatransport:transport-backend-cct จากเวอร์ชัน 3.0.0 เป็น 3.1.9
อัปเดตข้อกำหนดขั้นต่ำของ com.google.android.datatransport:transport-runtime จาก v3.0.1 เป็น v3.1.9
ข้อกำหนดเวอร์ชันขั้นต่ำของ androidx.lifecycle:lifecycle-extensions ได้รับการอัปเดตจาก v2.0.0 เป็น v2.2.0
ข้อกำหนดเวอร์ชันขั้นต่ำของ androidx.lifecycle:lifecycle-common-java8 ได้รับการอัปเดตจาก v2.0.0 เป็น v2.6.1
อัปเดตข้อกำหนดเวอร์ชัน androidx.appcompat:appcompat ขั้นต่ำจาก v1.0.0 เป็น v1.6.1
อัปเดตข้อกำหนดเวอร์ชัน androidx.fragment:fragment ขั้นต่ำจาก v1.0.0 เป็น v1.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
ตอนนี้เมธอด
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 ตั้งแต่เวอร์ชัน v18.1.0(รวม) ถึงเวอร์ชัน v19.0.0(ไม่รวม)
แก้ไขข้อผิดพลาด "เกินกำหนดเวลา" สำหรับการสื่อสารภายในระหว่าง SDK กับ แบ็กเอนด์ของ Google
แก้ไขปัญหาการแสดงผลสำหรับหน้าจอขนาดเล็กและโหมดการแสดงภาพซ้อนภาพ
คำแนะนำในการย้ายข้อมูล
1.99.1 (31 สิงหาคม 2023)
การแก้ไขข้อบกพร่อง
แก้ไขข้อขัดข้องที่เกิดขึ้นเมื่อมีการทำลายกิจกรรมหรือ Fragment ของโฮสต์ SDK
แก้ไขข้อขัดข้องที่เกิดขึ้นเมื่อมิติข้อมูลของ MapView เป็น 0 (ไม่ว่าจะเป็น ความสูงหรือความกว้าง)
แก้ไขข้อขัดข้องที่เกิดขึ้นเมื่อฉายภาพตำแหน่งรถบนเส้นหลายจุดของเส้นทาง
การปรับปรุง
- ป้องกันไม่ให้ SDK ขัดข้องเมื่อมีการโหลดแอปพลิเคชันโฮสต์จากภายนอก และไม่มีแหล่งข้อมูลภาพเริ่มต้น
1.99.0 (22 มิถุนายน 2023)
การแก้ไขข้อบกพร่อง
แก้ไขปัญหาการแสดงผลสำหรับหน้าจอขนาดเล็กและโหมดการแสดงภาพซ้อนภาพ
แก้ไขการกะพริบของยานพาหนะระหว่างการแชร์การเดินทาง
1.2.1 (7 มิถุนายน 2023)
การแก้ไขข้อบกพร่อง
- แก้ไขข้อบกพร่องที่ทำให้ยานพาหนะกะพริบระหว่างการแชร์การเดินทาง
1.2.0 (21 พฤศจิกายน 2022)
การแก้ไขข้อบกพร่อง
- แก้ไขข้อบกพร่องที่ทำให้มีการรายงานการเข้าชมที่ว่างเปล่าในแฮนเดิล
onTripActiveRouteTrafficUpdated
ฟีเจอร์ใหม่
- "เส้นหลายจุดที่รับรู้การจราจร" พร้อมให้บริการแก่ผู้ใช้ทั่วไปแล้ว
1.1.2 (27 ตุลาคม 2022)
การแก้ไขข้อบกพร่อง
- แก้ไขข้อบกพร่องที่ทำให้เส้นหลายเส้นของเส้นทางหายไปหลังจากเริ่ม
JourneySharingSession
มากกว่า 1 ครั้งสำหรับTripModel
ประกาศ: หยุดการรองรับ Android 5 (25 กรกฎาคม 2022)
สำหรับ SDK เวอร์ชัน 1.1.1 เราจะให้การสนับสนุนเพิ่มเติมอีก 1 ปีสำหรับ แอปที่ทำงานบน Android 5 ทั้งระดับ API 21 และ 22
การดำเนินการนี้หมายความว่าอย่างไร
SDK สำหรับผู้บริโภคที่ทำงานในแอป Android จะรองรับ Android 5 (API ระดับ 21) เป็นอย่างน้อยจนถึงวันที่ 30 มิถุนายน 2023
หลังจากวันที่ 30 มิถุนายน 2023 เราจะรองรับเฉพาะ API ระดับ 23 ขึ้นไปของ Android กล่าวคือ เราจะหยุดรองรับ Android API ระดับ 21 และ 22 ใน SDK ทุกเวอร์ชันหลังจากวันที่ดังกล่าว ซึ่งหมายความว่าเราจะไม่แก้ไขข้อบกพร่องที่เกี่ยวข้องกับ Android 21 หรือ 22 ใน SDK เวอร์ชันใดก็ตาม (รวมถึง 4.x) และเราไม่ รับประกันว่า SDK จะทำงานได้อย่างถูกต้อง
v1.1.1 (25 กรกฎาคม 2022)
การเปลี่ยนแปลงการขึ้นต่อกัน
- ลดระดับ API ของ Android ที่รองรับขั้นต่ำเป็น 21
v1.1.0 (28 เมษายน 2022)
- การปรับปรุงภายใน
v1.0.19 (17 มีนาคม 2022)
การแก้ไขข้อบกพร่อง
- แก้ไขปัญหาหน่วยความจำรั่วไหลในคลาส
ConsumerApi
v1.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
ซึ่งทั้ง 2 รายการนี้แชร์ กับ Maps SDK
การตรวจสอบข้อขัดข้อง
เพิ่มการตรวจจับและการบันทึกข้อขัดข้อง
- เราได้เพิ่มตัวเลือกให้คุณเลือกไม่ใช้ฟังก์ชันนี้ การดำเนินการนี้ เป็นส่วนหนึ่งของความพยายามที่ใหญ่กว่าในระดับภูมิภาคเพื่อการตรวจสอบข้อขัดข้อง
การเปลี่ยนแปลงการตรวจสอบสิทธิ์
- นำวิธีการที่ไม่จำเป็นออกจากอินเทอร์เฟซการตรวจสอบสิทธิ์
- นำพารามิเตอร์
ServiceType
ออก
- นำพารามิเตอร์
v0.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
การเปลี่ยนแปลงในการใช้งาน
- แก้ไข Race Condition ที่ 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 ที่กำหนดเองและเมธอดที่เกี่ยวข้องออก
(
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
ระบบจะพยายามดึงค่าจากไฟล์ Manifest ของ Android หรือ ใช้ค่าเริ่มต้นแทน
การปรับปรุง
- ระบบจะไม่แสดงเส้นหลายเส้นของเส้นทางเมื่อสถานะการเดินทางเป็น
ARRIVED_AT_PICKUP
- เราได้ปรับปรุงการติดตามยานพาหนะที่อยู่นอกเส้นทาง (ต้องใช้ DriverSDK 1.15) ดังนี้
- การติดตามยานพาหนะจะไม่ปรับยานพาหนะให้ตรงกับเส้นทางเมื่อยานพาหนะ ขับผ่านจุดรับ
- การติดตามยานพาหนะช่วยให้แสดงยานพาหนะที่ไม่ได้อยู่บนถนนได้ เช่น ในลานจอดรถที่ไม่ได้แมป
- ตอนนี้ไอคอนยานพาหนะจะอัปเดตเมื่อปลายทางของคนขับไม่ตรงกับปลายทางใน Fleet Engine
v0.8.6 (16 ธันวาคม 2019)
การเปลี่ยนแปลง API
เพิ่ม
TripInfo.getVehicleLocation()
แล้วConsumerMapView
ไม่ใช่เวอร์ชันสุดท้ายอีกต่อไป
การเปลี่ยนแปลงในการใช้งาน
- ตอนนี้ระบบจะคำนวณระยะทางที่เหลือของขาที่ใช้งานอยู่โดยใช้ระยะทางของเซิร์ฟเวอร์ (เส้นทางที่คนขับรายงาน + เส้นทางคงที่ (หากมี)) แทนการสแนปในเครื่อง การเปลี่ยนแปลงนี้จะทำให้ค่าระยะทางที่เหลือมีความแม่นยำมากขึ้น
การเปลี่ยนแปลงอื่นๆ
ต้องมีทรัพยากร Dependency ใหม่ ดูรายละเอียดได้ในไฟล์ .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 ที่แปลงเป็น Jetifier แล้ว ดูข้อมูลเกี่ยวกับวิธีเลิกใช้ Jetifier ได้ที่ Jetifier: โหมดย้อนกลับ
v0.8.1 (13 กันยายน 2019)
ฟีเจอร์ใหม่
การสนับสนุนสำหรับ ConsumerMapView
ตอนนี้อาร์ติแฟกต์ ODRD จะจัดส่งในที่เก็บ Maven แทนที่จะเป็นไฟล์ .aar zip ดูข้อมูลเพิ่มเติมได้ที่เพิ่ม Consumer SDK ลงในแอป
การเปลี่ยนแปลง API
เพิ่ม
ConsumerController.disableAutoCamera()
เป็นฟังก์ชันตรงข้ามกับcenterMapForState()
VehicleLocation.getUpdateTime()
จะแสดงผล Long ที่แสดงถึง การประทับเวลา (เป็นมิลลิวินาที)ลดความซับซ้อนของอินเทอร์เฟซ
AuthTokenFactory
เพื่อแสดงเมธอดเดียวสำหรับการสร้างโทเค็น เปลี่ยนAuthTokenFactory
จากอินเทอร์เฟซเป็น คลาสแบบนามธรรมเพื่อให้มีความเข้ากันได้แบบย้อนหลังใน Java7 การเปลี่ยนแปลงนี้ เข้ากันได้แบบย้อนหลัง แต่เราได้เลิกใช้งานวิธีการเก่าสำหรับการสร้างโทเค็นบริการเดียว และจะนำออกในที่สุด
การเปลี่ยนแปลงในการใช้งาน
ตอนนี้ชิ้นงานจะอยู่ตรงกลางไอคอน ซึ่งจะไม่มีการชดเชยเงา
setState
เป็นJOURNEY_SHARING onStartTripMonitoring()
แทนที่จะรอ สถานะของ Trip ที่ตรวจสอบแสดงข้อมูลสำหรับการอัปเดตข้อมูลการเดินทางครั้งแรกเสมอ แม้ว่าข้อมูลการเดินทางจะไม่ได้ซิงค์อยู่ก็ตาม
เพิ่ม Android Map Utils เป็นทรัพยากร Dependency ที่ระบุ
การแก้ไขข้อบกพร่อง
- แก้ไขไวยากรณ์การส่งออก Proguard ที่เสียสำหรับ grpc keep
v0.7.0 (7 สิงหาคม 2019)
ฟีเจอร์ใหม่
- รองรับหลายปลายทางสำหรับการแชร์การเดินทาง
การเปลี่ยนแปลง API
วิธีการใหม่สำหรับ
ConsumerTripCallback
onTripIntermediateDestinationsUpdated()
onTripETAToNextTripWaypointUpdated()
ConsumerController
วิธีใหม่getIntermediateDestinations()
setIntermediateDestinations(List<TerminalLocation> intermediateDestinations)
ใหม่
TripStatuses
TripStatus.ENROUTE_TO_INTERMEDIATE_DESTINATION
TripStatus.ARRIVED_AT_INTERMEDIATE_DESTINATION
ตัวรับ
TripWaypoint
ใหม่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()
ออกแล้ว
การแก้ไขข้อบกพร่อง
แก้ไขข้อบกพร่องที่เส้นทางไม่ได้รับการตัดให้สั้นลงตามตำแหน่งของยานพาหนะเมื่อการตรวจสอบการเดินทางเริ่มขึ้นกลางการเดินทางที่ใช้งานอยู่ (ไม่ใช่ที่จุดเริ่มต้นของเส้นทาง)
แก้ไขข้อบกพร่องที่การเรียกกลับการเดินทางไม่ได้รับการเรียกใช้สำหรับ Listener ที่ลงทะเบียนใน TripManager หลังจากที่ TripManager ดึงข้อมูลการเดินทางแล้ว
ตอนนี้การซูมกล้องจะรวมเฉพาะเส้นทางที่ใช้งานอยู่และจุดแวะพักของการเดินทางครั้งถัดไป (จุดแวะพักที่เป็นของการเดินทาง) แม้ว่าขาที่เหลือจะมองเห็นได้ แต่การซูมจะไม่รวมขาที่เหลือ ก่อนหน้านี้ ระบบจะรวมจุดส่งคืนไว้ ในการซูมเมื่อยานพาหนะกำลังเดินทางไปรับหรือถึงจุด รับแล้ว แต่จะไม่เป็นเช่นนี้แล้ว
การปรับปรุง
ป้อนข้อมูลคนขับลงในจุดแวะพักที่เหลือเป็นอันดับแรก (ระบบจะแสดงรายการจุดแวะพักที่เหลือ จาก
ConsumerTripCallback.onTripRemainingWaypointsUpdated
และTripInfo.getRemainingWaypoints()
อัปเดตเวลาถึงโดยประมาณของจุดอ้างอิงที่เหลือทั้งหมดเมื่อเวลาถึงโดยประมาณของจุดอ้างอิงแรกใน รายการเปลี่ยนแปลง
บังคับให้เปิดใช้กล้องอัตโนมัติอีกครั้งเมื่อคนขับถึงจุดรับเท่านั้น ก่อนหน้านี้ กล้องอัตโนมัติจะรีเซ็ตเป็นเปิดใช้ทุกครั้งที่มีการเปลี่ยนแปลงสถานะการเดินทาง ระบบจะยังคงเปิดใช้กล้องอัตโนมัติโดยค่าเริ่มต้น Autocamera จะไม่เปิดใช้ซ้ำหากมีการตั้งค่าการเดินทางใหม่ที่ใช้งานอยู่ โดยไม่มีการเรียกใช้
startTripMonitoring()
ใหม่
v0.6.1 (26 มิถุนายน 2019)
ฟีเจอร์ใหม่
- รองรับการแชร์การเดินทางด้วยการแชร์รถ
การเปลี่ยนแปลง API
ConsumerController.getConsumerMapStyle()
จะแสดงผลเป็นConsumerMapStyle
แทนTask<ConsumerMapStyle>
เพิ่ม
PolylineStyle.setZIndex()
แล้ว
การแก้ไขข้อบกพร่อง
ตอนนี้ภาพเคลื่อนไหวของเส้นทางจะเกิดขึ้นเมื่อส่วนของเส้นทางซิงค์กันเท่านั้น ซึ่งจะช่วยปรับปรุงประสบการณ์ของผู้ใช้
แก้ไขปัญหา "การกะพริบ" ของยานพาหนะระหว่างการประมาณค่าภาพเคลื่อนไหวเมื่อการอัปเดตตำแหน่งของคนขับอยู่ใกล้กัน
แก้ไขข้อบกพร่องที่ยานพาหนะเริ่มที่จุดเริ่มต้นของเส้นทางแทนที่จะเริ่มที่ ตำแหน่งที่อัปเดตล่าสุดเมื่อการตรวจสอบการเดินทางเริ่มขึ้นกลาง การเดินทางที่ใช้งานอยู่
แสดงเส้นหลายเหลี่ยมของเส้นทางที่ใช้งานอยู่เหนือเส้นทางที่เหลือเมื่อเส้นทาง ทับซ้อนกัน
การปรับปรุง
- ตอนนี้ให้แสดงคลาส gRPC
Status
ที่มีเมธอดที่ไม่ได้ปิดบัง
v0.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
- ตอนนี้คุณตั้งค่าการเรียกกลับสำหรับรัฐได้โดยไม่ต้องป้อนรัฐ
วิธีการ | การติดต่อกลับ |
---|---|
startPickupSelection |
setPickupSelectionCallback |
startDropoffSelection |
setDropoffSelectionCallback |
startTripPreview |
setTripPreviewSelectionCallback |
ConsumerController.setLanguage(String languageCode)
ช่วยให้คุณตั้งค่าภาษาที่ใช้ในการเรียก FleetEngine ได้ (เช่น สำหรับคำอธิบายจุดรับ)
การปรับปรุง
- ตอนนี้สถานะการเลือกจุดส่งมีหมุดที่ลากได้แล้ว
- นำภาพเคลื่อนไหวของกล้องในสถานะ
INITIALIZE
ออกแล้ว - แทนที่
ManagedChannelBuilder
ด้วยAndroidChannelBuilder
แล้ว