ส่วนนี้มีบันทึกประจำรุ่นของ Consumer SDK สำหรับ Android
ประกาศ: หยุดให้บริการสนับสนุน API ระดับ 23, 24 และ 25
ตามนโยบายการรองรับเวอร์ชันระบบปฏิบัติการบนอุปกรณ์เคลื่อนที่ เราจะหยุดรองรับ Android 6 และ 7 (API ระดับ 23, 24 และ 25) ใน SDK สําหรับผู้บริโภคเวอร์ชันหลักที่กําลังจะเปิดตัวของ Android
SDK เวอร์ชันสำหรับผู้บริโภคสำหรับ Android ที่เผยแพร่ตั้งแต่ไตรมาสที่ 4 ของปี 2025 เป็นต้นไปจะรองรับ Android 8 เป็นอย่างน้อย (API ระดับ 26) ส่วน SDK เวอร์ชันเก่าจะยังคงรองรับ Android 6 และ 7 ต่อไป
หากไม่ได้ระบุหมายเลขเวอร์ชันของ Dependency IDE จะโหลด SDK เวอร์ชันล่าสุด และบิลด์ใหม่ของแอปจะไม่รองรับ Android 6 และ 7
ระบุเวอร์ชันของ Consumer SDK สำหรับ Android ในข้อกำหนดของบิลด์แอปพลิเคชันเพื่อควบคุมเวลาที่คุณเพิ่มระบบปฏิบัติการที่รองรับขั้นต่ำสำหรับแอปเวอร์ชันใหม่
3.0.0 (6 ธันวาคม 2024)
การเปลี่ยนแปลงทรัพยากรและการกำหนดค่า
- ตั้งแต่ Consumer SDK เวอร์ชัน 3.0.0 สำหรับ 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()
ลงใน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 จากกระบวนการระยะไกลซึ่งแยกจากแอปพลิเคชัน
แก้ไขข้อขัดข้องที่จะเกิดขึ้นขณะแสดงภาพเคลื่อนไหวของกล้องและมีพื้นที่แนวตั้งหรือแนวนอนไม่เพียงพอสำหรับระยะห่างจากขอบ กรณีนี้จะเกิดขึ้นในโปรแกรมแสดงผลแผนที่เวอร์ชันล่าสุดเท่านั้น
แก้ไขข้อบกพร่องที่ทำให้ตัดช่วงแรกของการเดินทางแบบต่อเนื่องออกเมื่อช่วงที่สองผ่านถนนเส้นเดียวกัน
ปัญหา
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
อัปเดตเวอร์ชันของบริการ 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
อัปเดตเวอร์ชันของไลบรารีต่อไปนี้
ข้อกำหนดเวอร์ชันขั้นต่ำของไลบรารี android-maps-utils อัปเดตจาก v0.4.2 เป็น v3.5.2
ข้อกำหนดเวอร์ชันขั้นต่ำของ com.google.android.datatransport:transport-backend-cct อัปเดตจาก v3.0.0 เป็น v3.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)
การแก้ไขข้อบกพร่อง
แก้ไขข้อขัดข้องที่จะเกิดขึ้นเมื่อมีการทำลายกิจกรรมหรือแฟรกเมนต์โฮสต์ SDK
แก้ไขข้อขัดข้องที่จะเกิดขึ้นเมื่อขนาดของ MapView เป็น 0 (ความสูงหรือความกว้าง)
แก้ไขข้อขัดข้องที่จะเกิดขึ้นเมื่อฉายตำแหน่งยานพาหนะบนเส้นทางหรือเส้นประกอบ
การปรับปรุง
- ป้องกันไม่ให้ SDK ขัดข้องเมื่อแอปพลิเคชันโฮสต์มีการโหลดจากแหล่งที่ไม่รู้จัก และไม่มีทรัพยากรภาพเริ่มต้น
1.99.0 (22 มิถุนายน 2023)
การแก้ไขข้อบกพร่อง
แก้ไขปัญหาการแสดงผลสำหรับหน้าจอขนาดเล็กและโหมดภาพซ้อนภาพ
แก้ไขภาพรถกะพริบระหว่างการแชร์เส้นทาง
1.2.1 (7 มิถุนายน 2023)
การแก้ไขข้อบกพร่อง
- แก้ไขข้อบกพร่องที่ทำให้ยานพาหนะกะพริบระหว่างการแชร์เส้นทาง
1.2.0 (21 พฤศจิกายน 2022)
การแก้ไขข้อบกพร่อง
- แก้ไขข้อบกพร่องที่ทำให้มีการรายงานการเข้าชมว่างเปล่าใน
onTripActiveRouteTrafficUpdated
callback
ฟีเจอร์ใหม่
- "เส้นประกอบที่คำนึงถึงสภาพการจราจร" พร้อมให้บริการแก่ผู้ใช้ทั่วไปแล้ว
1.1.2 (27 ตุลาคม 2022)
การแก้ไขข้อบกพร่อง
- แก้ไขข้อบกพร่องที่ทำให้เส้นประกอบของเส้นทางหายไปหลังจากเริ่ม
JourneySharingSession
มากกว่า 1 ครั้งสำหรับTripModel
ประกาศ: หยุดรองรับ Android 5 (25 กรกฎาคม 2022)
สำหรับ SDK เวอร์ชัน 1.1.1 เราจะให้การสนับสนุนแอปที่ทำงานบน Android 5 ต่อไปอีก 1 ปี ทั้งสำหรับ API ระดับ 21 และ 22
การดำเนินการนี้หมายความว่าอย่างไร
Consumer SDK ที่ทำงานในแอป Android จะรองรับ Android เวอร์ชันขั้นต่ำ 5 (API ระดับ 21) จนถึงวันที่ 30 มิถุนายน 2023
หลังจากวันที่ 30 มิถุนายน 2023 เราจะรองรับเฉพาะ Android API ระดับ 23 ขึ้นไป กล่าวคือ เราจะหยุดรองรับ 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
การเปลี่ยนแปลงการใช้งาน
- แก้ไขเงื่อนไขการแข่งขันที่ 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
อีกต่อไป
การเปลี่ยนแปลงอื่นๆ
- อัปเดตเวอร์ชันของ Dependency ต่อไปนี้
- 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
ไม่ใช่ค่าสุดท้ายอีกต่อไป
การเปลี่ยนแปลงการใช้งาน
- ตอนนี้ระบบจะคำนวณระยะทางที่เหลือของขาที่ใช้งานอยู่โดยใช้ระยะทางของเซิร์ฟเวอร์ (ระยะทางที่รายงานโดยคนขับ + เส้นทางแบบคงที่ หากมี) แทนการจับคู่เส้นทางในพื้นที่ การเปลี่ยนแปลงนี้จะทำให้ค่าระยะทางที่เหลือแม่นยำยิ่งขึ้น
การเปลี่ยนแปลงอื่นๆ
ต้องระบุทรัพยากรใหม่ ดูรายละเอียดได้ในไฟล์ .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: โหมดย้อนกลับ
v0.8.1 (13 กันยายน 2019)
ฟีเจอร์ใหม่
การรองรับ ConsumerMapView
ตอนนี้อาร์ติแฟกต์ ODRD จะจัดส่งในที่เก็บ Maven แทนไฟล์ ZIP .aar ดูข้อมูลเพิ่มเติมได้ที่เพิ่ม Consumer SDK ลงในแอป
การเปลี่ยนแปลง 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
วิธีการใหม่สำหรับ
ConsumerTripCallback
onTripIntermediateDestinationsUpdated()
onTripETAToNextTripWaypointUpdated()
วิธีการ
ConsumerController
ใหม่getIntermediateDestinations()
setIntermediateDestinations(List<TerminalLocation> intermediateDestinations)
TripStatuses
ใหม่TripStatus.ENROUTE_TO_INTERMEDIATE_DESTINATION
TripStatus.ARRIVED_AT_INTERMEDIATE_DESTINATION
TripWaypoint
getter ใหม่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()
ออกแล้ว
การแก้ไขข้อบกพร่อง
แก้ไขข้อบกพร่องที่เส้นทางไม่ตัดให้ตรงกับตำแหน่งของยานพาหนะเมื่อการตรวจสอบการเดินทางเริ่มขึ้นในช่วงกลางของการเดินทางที่ดำเนินอยู่ (ไม่ใช่ที่จุดเริ่มต้นของเส้นทาง)
แก้ไขข้อบกพร่องที่ไม่มีการเรียกใช้การเรียกกลับการเดินทางสําหรับผู้ฟังที่ลงทะเบียนใน TripManager หลังจากที่ TripManager ดึงข้อมูลการเดินทางแล้ว
ตอนนี้การซูมกล้องจะรวมเฉพาะเส้นทางที่ใช้งานอยู่และจุดแวะพักของการเดินทางถัดไป (จุดแวะพักที่เป็นของการเดินทาง) แม้ว่าจะเห็นขาที่เหลืออยู่ แต่การซูมจะไม่รวมขานั้นไว้ ก่อนหน้านี้ ระบบจะรวมจุดส่งในภาพซูมเมื่อยานพาหนะอยู่ระหว่างทางไปรับหรือมาถึงจุดรับ แต่ปัจจุบันนี้ไม่เป็นเช่นนั้นแล้ว
การปรับปรุง
ป้อนข้อมูลจุดสังเกตที่เหลือลำดับที่ 0 ด้วยข้อมูลไดรเวอร์ (ระบบจะแสดงรายการจุดสังเกตที่เหลือจาก
ConsumerTripCallback.onTripRemainingWaypointsUpdated
และTripInfo.getRemainingWaypoints()
อัปเดตเวลาถึงจุดแวะพักที่เหลือทั้งหมดเมื่อเวลาถึงจุดแวะพักแรกในรายการมีการเปลี่ยนแปลง
บังคับให้เปิดใช้กล้องอัตโนมัติอีกครั้งเฉพาะเมื่อคนขับมาถึงจุดรับ ก่อนหน้านี้ ระบบจะรีเซ็ต autocamera เป็น "เปิดใช้" เมื่อสถานะการเดินทางมีการเปลี่ยนแปลงทุกครั้ง กล้องอัตโนมัติจะยังคงเปิดใช้โดยค่าเริ่มต้น 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