Ghi chú phát hành SDK dành cho người dùng Android

Phần này chứa ghi chú phát hành cho Consumer SDK cho Android.

Thông báo: Ngừng hỗ trợ API cấp 23, 24 và 25

Theo chính sách hỗ trợ phiên bản hệ điều hành di động, chúng tôi sẽ ngừng hỗ trợ Android 6 và 7 (API cấp 23, 24 và 25) trong các phiên bản chính sắp tới của Consumer SDK cho Android.

Các phiên bản Consumer SDK cho Android được phát hành từ quý 4 năm 2025 trở đi sẽ hỗ trợ tối thiểu Android 8 (API cấp 26). Các phiên bản SDK cũ hơn sẽ tiếp tục hỗ trợ Android 6 và 7.

Nếu các phần phụ thuộc của bạn không chỉ định số phiên bản, thì IDE sẽ tải phiên bản SDK mới nhất và các bản dựng mới của ứng dụng sẽ không hỗ trợ Android 6 và 7.

Chỉ định một phiên bản Consumer SDK cho Android trong các phần phụ thuộc bản dựng của ứng dụng để kiểm soát thời điểm bạn tăng hệ điều hành được hỗ trợ tối thiểu cho các phiên bản mới của ứng dụng.

3.2.0 (Ngày 26 tháng 6 năm 2025)

  • Cải thiện tính năng ghi nhật ký nội bộ.

Thay đổi về cấu hình và phần phụ thuộc

  • Kể từ phiên bản 3.2.0 của Consumer SDK cho Android, các ứng dụng phải nâng cấp lên Kotlin 2.1.

Sửa lỗi

  • Sử dụng chiều dài của đường nhiều đoạn thay vì khoảng cách đường chim bay cho các quyết định về ảnh động nội bộ.

3.1.0 (Ngày 10 tháng 3 năm 2025)

  • Cải thiện tính năng ghi nhật ký nội bộ.

3.0.0 (Ngày 6 tháng 12 năm 2024)

Thay đổi về cấu hình và phần phụ thuộc

2.99.0 (Ngày 25 tháng 11 năm 2024)

Sửa lỗi

  • Khắc phục lỗi ANR xảy ra khi ConsumerApi.cleanUp() mất quá nhiều thời gian để thực thi. Tính năng này sẽ được triển khai dần (bắt đầu từ 0%) sau khi bản phát hành được tích hợp.
  • Khắc phục vấn đề khiến trình điều khiển nhận được lỗi gRPC với mã "INTERNAL" và thông báo "Panic! Đây là một lỗi!". Tính năng này sẽ được triển khai dần (bắt đầu từ 0%) sau khi bản phát hành được tích hợp.

2.3.0 (Ngày 2 tháng 8 năm 2024)

Nội dung thay đổi đối với API

2.2.0 (Ngày 7 tháng 5 năm 2024)

Nội dung thay đổi đối với API

  • Đã thêm API hỗ trợ cho việc tích hợp Jetpack Compose. Đây là một tính năng thử nghiệm. Để biết thông tin chi tiết về cách tích hợp với Jetpack Compose, hãy liên hệ với người đại diện của bạn.

2.1.0 (Ngày 17 tháng 1 năm 2024)

Sửa lỗi

  • Khắc phục sự cố xảy ra khi SDK được khởi chạy nhiều lần trong vòng đời của ứng dụng.

Nội dung thay đổi đối với API

  • Giới thiệu phương thức truy xuất phiên bản GoogleMap do SDK tạo (ConsumerGoogleMap.getGoogleMap()).
  • Giới thiệu API để truy xuất các thực thể Marker do SDK tạo để biểu thị phương tiện (ConsumerController.getConsumerMarker()).
  • Giới thiệu API để nhận thông tin cập nhật được dự đoán của ứng dụng cho thời gian và khoảng cách trong tính năng Chia sẻ hành trình (ProjectedRouteEta).

1.99.2 (Ngày 3 tháng 11 năm 2023)

  • Khắc phục sự cố xảy ra khi SDK được khởi chạy từ một quy trình từ xa, tách biệt với ứng dụng.

  • Khắc phục sự cố xảy ra khi thực thi một ảnh động camera và không có đủ khoảng trống theo chiều dọc hoặc chiều ngang cho khoảng đệm. Vấn đề này chỉ xảy ra trên trình kết xuất bản đồ mới nhất.

  • Khắc phục lỗi khiến chặng đầu tiên của chuyến đi khứ hồi bị cắt bớt khi chặng thứ hai đi qua cùng một con đường.

Vấn đề

  • ConsumerApi.initialize() sẽ gửi một ngoại lệ nếu được gọi khi đã có một phiên bản API. Để giải quyết vấn đề này, trước tiên, hãy gọi ConsumerApi.getInstance() và đánh giá Task được trả về để xác định xem đã có một thực thể API hay chưa.

2.0.0 (Ngày 15 tháng 9 năm 2023)

Thông báo: Thay đổi có thể gây lỗi

  • Yêu cầu về cấp độ API tối thiểu được cập nhật từ 21 lên 23.

  • Cập nhật yêu cầu về phiên bản Maps SDK từ phiên bản 17.0.0 lên phiên bản 18.1.0

  • Yêu cầu về phiên bản tối thiểu của thư viện chuẩn Kotlin được cập nhật từ phiên bản 1.6.10 lên phiên bản 1.9.0

  • Cập nhật các phiên bản phần phụ thuộc của Dịch vụ Google Play

    • Yêu cầu tối thiểu về phiên bản thư viện play-services-base được cập nhật từ v18.0.1 lên v18.2.0

    • Yêu cầu tối thiểu về phiên bản thư viện play-services-basement được cập nhật từ phiên bản 18.0.0 lên phiên bản 18.2.0

    • Yêu cầu tối thiểu về phiên bản thư viện play-services-location được cập nhật từ phiên bản 17.0.0 lên phiên bản 21.0.1

    • Yêu cầu tối thiểu về phiên bản thư viện play-services-tasks được cập nhật từ v18.0.1 lên v18.0.2

  • Thêm thư viện androidx.room:room-runtime với yêu cầu tối thiểu về phiên bản được đặt thành v2.5.2

  • Cập nhật các phiên bản phần phụ thuộc sau

    • Yêu cầu về phiên bản tối thiểu của thư viện android-maps-utils được cập nhật từ v0.4.2 lên v3.5.2

    • Yêu cầu tối thiểu về phiên bản com.google.android.datatransport:transport-backend-cct được cập nhật từ phiên bản 3.0.0 lên phiên bản 3.1.9

    • Yêu cầu tối thiểu về phiên bản com.google.android.datatransport:transport-runtime được cập nhật từ phiên bản 3.0.1 lên phiên bản 3.1.9

    • Yêu cầu tối thiểu về phiên bản androidx.lifecycle:lifecycle-extensions đã được cập nhật từ phiên bản 2.0.0 lên phiên bản 2.2.0

    • Yêu cầu tối thiểu về phiên bản androidx.lifecycle:lifecycle-common-java8 được cập nhật từ phiên bản 2.0.0 lên phiên bản 2.6.1

    • Yêu cầu tối thiểu về phiên bản androidx.appcompat:appcompat được cập nhật từ v1.0.0 lên v1.6.1

    • Yêu cầu tối thiểu về phiên bản androidx.fragment:fragment được cập nhật từ v1.0.0 lên v1.6.1

  • Xoá các API sau đây đã không được dùng nữa: ConsumerTrip, ConsumerTripCallback, ConsumerTripManager, ConsumerTripOptions. Các API này đã được thay thế bằng TripModel, TripModelCallback, TripModelManagerTripModelOptions.

  • Giờ đây, các ứng dụng sử dụng Consumer SDK phải có targetSdkVersion từ API 31 trở lên, compileSdkVersion từ API 33 trở lên.

  • Giờ đây, những ứng dụng sử dụng Consumer SDK phải bật tính năng hỗ trợ thư viện Java 8. Hãy xem https://developer.android.com/studio/write/java8-support để biết hướng dẫn cập nhật.

  • Các ứng dụng sử dụng Proguard hoặc Dexguard phải di chuyển sang R8. Hãy xem https://developer.android.com/build/shrink-code để biết thêm thông tin.

  • Các ứng dụng sử dụng Consumer SDK phải bật tính năng xoá đường. Hãy xem https://developer.android.com/studio/write/java8-support#library-desugaring để biết hướng dẫn.

  • Phương thức ConsumerApi.initialize() hiện sẽ ném một trường hợp ngoại lệ nếu phương thức này được gọi khi đã có một thực thể API được tạo. Bạn phải dùng Task do ConsumerApi.getInstance() trả về để xác định xem có phiên bản API nào được tạo trước đó hay không.

Thông báo: Ngừng sử dụng API

  • Không dùng các lớp chú giải Trip.TripStatusTrip.TripType nữa, thêm các lớp chú giải TripInfo.TripStatusTripInfo.TripType để thay thế các lớp này.

    • Trong quá trình thay đổi này, TripModelCallback#onTripStatusUpdated(TripInfo tripInfo, @Trip.TripStatus int status) không còn được dùng và TripModelCallback#onTripStatusUpdate(TripInfo tripInfo, @TripInfo.TripStatus int status) được thêm vào để thay thế.

    • Trong quá trình thay đổi này, TripInfo#getTripStatus() không còn được dùng nữa và TripInfo#getCurrentTripStatus() được thêm vào để thay thế.

    • Trong quá trình thay đổi này, TripInfo#getTripType() không còn được dùng nữa và TripInfo#getCurrentTripType() được thêm vào để thay thế.

  • Ngừng dùng lớp Trip.

Các thay đổi và bản sửa lỗi khác

  • Hỗ trợ yêu cầu trình kết xuất Maps SDK mới nhất. Hãy xem phần Trình kết xuất bản đồ mới để biết thông tin chi tiết.

  • Cung cấp phạm vi hỗ trợ SDK Maps từ phiên bản 18.1.0(bao gồm) đến phiên bản 19.0.0(không bao gồm).

  • Khắc phục lỗi "đã quá thời hạn" đối với hoạt động giao tiếp nội bộ giữa SDK và phần phụ trợ của Google.

  • Khắc phục vấn đề kết xuất cho màn hình kích thước nhỏ và chế độ hình trong hình.

Hướng dẫn di chuyển

1.99.1 (Ngày 31 tháng 8 năm 2023)

Sửa lỗi

  • Khắc phục sự cố xảy ra khi hoạt động hoặc mảnh máy chủ SDK bị huỷ.

  • Khắc phục lỗi xảy ra khi kích thước của MapView là 0 (chiều cao hoặc chiều rộng).

  • Khắc phục sự cố xảy ra khi chiếu vị trí của xe trên đường đa tuyến.

Những điểm cải tiến

  • Ngăn SDK gặp sự cố khi ứng dụng lưu trữ được tải lên thiết bị và không có tài nguyên trực quan mặc định.

1.99.0 (Ngày 22 tháng 6 năm 2023)

Sửa lỗi

  • Khắc phục vấn đề về kết xuất cho màn hình có kích thước nhỏ và cho chế độ hình trong hình.

  • Khắc phục tình trạng xe nhấp nháy trong quá trình chia sẻ hành trình.

1.2.1 (Ngày 7 tháng 6 năm 2023)

Sửa lỗi

  • Khắc phục một lỗi khiến xe nhấp nháy trong quá trình chia sẻ hành trình.

1.2.0 (Ngày 21 tháng 11 năm 2022)

Sửa lỗi

  • Khắc phục lỗi khiến lưu lượng truy cập trống được báo cáo trong lệnh gọi lại onTripActiveRouteTrafficUpdated.

Tính năng mới

  • "Đường nhiều đoạn có nhận biết lưu lượng truy cập" hiện đã được phát hành rộng rãi.

1.1.2 (Ngày 27 tháng 10 năm 2022)

Sửa lỗi

  • Khắc phục lỗi khiến đường đa tuyến biến mất sau khi JourneySharingSession được khởi động nhiều lần cho một TripModel.

Thông báo: Ngừng hỗ trợ Android 5 (ngày 25 tháng 7 năm 2022)

Đối với SDK phiên bản 1.1.1, chúng tôi sẽ hỗ trợ thêm một năm cho các ứng dụng chạy trên Android 5, cho cả API cấp 21 và 22.

Điều này có nghĩa là:

  • Consumer SDK chạy trên các ứng dụng Android của bạn sẽ hỗ trợ tối thiểu Android 5 (API cấp 21) cho đến hết ngày 30 tháng 6 năm 2023.

  • Sau ngày 30 tháng 6 năm 2023, chúng tôi sẽ chỉ hỗ trợ API Android cấp 23 trở lên. Nói cách khác, chúng tôi sẽ ngừng hỗ trợ API Android cấp 21 và 22 trên tất cả các phiên bản SDK sau ngày đó. Điều này có nghĩa là các lỗi liên quan đến Android 21 hoặc 22 trong mọi phiên bản SDK (kể cả 4.x) sẽ không được khắc phục và chúng tôi không đảm bảo rằng các SDK sẽ hoạt động chính xác.

v1.1.1 (ngày 25 tháng 7 năm 2022)

Thay đổi về phần phụ thuộc

  • Hạ cấp độ API Android tối thiểu được hỗ trợ xuống 21.

v1.1.0 (Ngày 28 tháng 4 năm 2022)

  • Cải tiến nội bộ.

v1.0.19 (Ngày 17 tháng 3 năm 2022)

Sửa lỗi

  • Khắc phục lỗi rò rỉ bộ nhớ trong lớp ConsumerApi.

phiên bản 1.0.14 (Ngày 30 tháng 11 năm 2021)

Cấp độ API Android tối thiểu được hỗ trợ hiện là 23.

Nội dung thay đổi đối với API

  • Các thay đổi đối với lớp ConsumerTripConsumerTripManager.

    • Xoá một số tên phương thức để làm rõ ý nghĩa và điều chỉnh cho phù hợp với nền tảng iOS.
  • Thay đổi đối với ConsumerTripCallback, ConsumerTripTripInfo.

    • Đã thay đổi một số tên lớp để tạo sự tương đồng với iOS. Ra mắt TripModel, TirpModelManagerTripModelOptions để ngừng sử dụng ConsumerTrip, ConsumerTripManagerConsumerTripOptions.

    • Dọn dẹp một số tên phương thức. Sửa đổi hoặc thêm nhận xét JavaDoc vào các phương thức để truyền tải ý nghĩa rõ ràng hơn.

    • Cải thiện khả năng xử lý lỗi.

Tuỳ chỉnh kiểu

  • Trình bao bọc cũ đã ngừng sử dụng

    • MarkerStyleOptionsPolylineStyleOptions không được dùng nữa và được thay thế bằng MarkerOptionsPolylineOptions. Cả hai đều được chia sẻ với Maps SDK.

Giám sát sự cố

  • Thêm tính năng phát hiện và ghi nhật ký sự cố.

    • Chúng tôi đã bổ sung lựa chọn cho phép bạn chọn không sử dụng chức năng này. Việc này được thực hiện trong khuôn khổ một nỗ lực lớn hơn trên toàn cầu của Geo nhằm giám sát sự cố.

Các thay đổi về quy trình xác thực

  • Xoá các phương thức không cần thiết khỏi giao diện Xác thực.
    • Đã xoá tham số ServiceType.

v0.9.28 (Ngày 18 tháng 5 năm 2021)

Nội dung thay đổi đối với API

  • Đã cập nhật tất cả các phương thức ConsumerTripCallback để sử dụng TripInfo làm tham số.
  • Đã thêm ConsumerTrip.isRefreshing(), cho biết liệu ConsumerTrip có đang chủ động cập nhật thông tin mới nhất về chuyến đi từ Fleet Engine hay không.
  • Thêm ConsumerTripCallback.onTripRemainingRouteDistanceUpdated().
  • Thêm ConsumerTripCallback.onTripRemainingRouteUpdated().
  • Thay thế các loại trả về Guava (ImmutableSet, ImmutableList) bằng các lớp tương đương java.util.
  • Thay đổi tên gói:

    • 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<0x0A>-><0x0A>com.google.android.libraries.ridesharing.consumer.auth.FleetEngineServiceType<0x0A> - 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
      

Các thay đổi về việc triển khai

  • Khắc phục một điều kiện tranh đấu trong đó SDK có thể gặp sự cố do tương tác với bản đồ trước khi bản đồ sẵn sàng.
  • SDK này không còn chứa bản sao không bị làm rối mã nguồn của io.grpc.
  • Khắc phục lỗi đường nhiều đoạn giao thông nhấp nháy trên một số thiết bị. Các đoạn đường giờ sẽ có đầu tròn.

v0.9.15 (Ngày 7 tháng 10 năm 2020)

Nội dung thay đổi đối với API

  • Bản phát hành này giới thiệu Đường nhiều đoạn có nhận biết lưu lượng truy cập. – Thêm TripInfo.getActiveRouteTraffic()TripInfo.getRemainingRouteTraffic().
    • Đã thêm ConsumerTripCallback.onTripActiveRouteTrafficUpdated()ConsumerTripCallback.onTripRemainingRouteTrafficUpdated() để cho biết thời điểm lưu lượng truy cập thay đổi.
    • Đã thêm PolylineStyleOptions để tuỳ chỉnh lưu lượng truy cập (setTrafficEnabled(), setTrafficColorNoData(), setTrafficColorNormal(), setTrafficColorSlow(), setTrafficColorTrafficJam()).
    • Đã đặt PolylineStyleOptions.TRAFFIC_Z_INDEX_ADDITION.
    • Thêm TripWaypoint.getTrafficData().
    • Đã thêm loại dữ liệu TrafficData.
    • Thêm ConsumerController.hideAllSessions(). ConsumerController.showSession() không còn chấp nhận giá trị rỗng làm đối số nữa.

v0.9.9 (Ngày 15 tháng 7 năm 2020)

Nội dung thay đổi đối với API

  • Đây là một thay đổi lớn, giới thiệu kiến trúc theo mô-đun với mối quan hệ rõ ràng hơn giữa lớp chỉ có dữ liệu (ví dụ: ConsumerTripManager) và lớp giao diện người dùng (ví dụ: JourneySharingSession). Để biết thông tin về cách di chuyển sang kiến trúc mới, hãy xem Hướng dẫn di chuyển theo mô-đun. – Đối tượng ConsumerTrip hiện được lấy từ ConsumerTripManager.getTrip().
    • ConsumerTrip.unregisterCallback đã được đổi tên thành ConsumerTrip.unregisterTripCallback.
    • ConsumerTrip.isCallbackRegistered đã được đổi tên thành ConsumerTrip.isTripCallbackRegistered.
    • Thêm ConsumerTrip.setConsumerTripOptions()ConsumerTrip.getConsumerTripOptions().
    • Đã xoá ConsumerTrip.setAutoRefreshInterval().
  • Xoá các API chia sẻ không phải là hành trình.
    • Đã xoá bản đồ mật độ xe.
    • Đã xoá trạng thái xem trước chuyến đi.
    • Đã xoá trạng thái chọn đến lấy hàng.
    • Đã xoá trạng thái lựa chọn điểm dừng.
    • Đã xoá các loại điểm đánh dấu sau: SELECTED_PICKUP_POINT, SUGGESTED_PICKUP_POINT, HIGHLIGHTED_PICKUP_POINTSELECTED_DROPOFF_POINT.
  • Thay đổi OnConsumerMarkerClickCallbackConsumerMapReadyCallback từ giao diện thành các lớp trừu tượng.
  • Đã thêm ConsumerController.getCameraUpdate(), ConsumerController.isAutoCameraEnabled()ConsumerController.enableAutoCamera().
  • Xoá FAB tuỳ chỉnh và các phương thức liên kết (ConsumerController.isMyLocationFabEnabledConsumerController.setMyLocationFabEnabled).

Các thay đổi về việc triển khai

  • ConsumerTripCallback, dù đã đăng ký hay chưa đăng ký bằng LifecycleOwner, sẽ không còn tự động huỷ đăng ký trên TripStatus.COMPLETE hoặc TripStatus.CANCELED nữa.
  • AutoCamera hiện được bật theo mặc định và không bao giờ tự bật hoặc tắt. Trước đây, AutoCamera tự động bật lại trên TripStatus.ARRIVED_AT_PICKUP và tự tắt khi người dùng tương tác với bản đồ trong quá trình chia sẻ hành trình.
  • Chúng tôi đã cải thiện ảnh động về xe trong tính năng chia sẻ hành trình như sau:
    • Ảnh động chia sẻ hành trình hiện xử lý trường hợp xe có thể di chuyển ngược lại một cách hợp lệ dọc theo một tuyến đường đã đi qua.
    • Giờ đây, xe sẽ chuyển động thẳng thay vì nội suy tuyến đường giữa các điểm khi thuật toán xác định rằng điều này là phù hợp.
  • Bạn không cần phải có quyền FINE_LOCATION nữa.

Các thay đổi khác

  • Cập nhật các phiên bản phần phụ thuộc sau:
    • 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

phiên bản 0.9.1 (Ngày 23 tháng 3 năm 2020)

Nội dung thay đổi đối với API

  • Đã thêm TripInfo.getVehicleId(), TripInfo.getNumberOfPassengers(), TripInfo.getIntermediateDestinationIndex(), TripInfo.getTripActiveRoute()TripInfo.getTripRemainingRoute().
  • Đã thêm lớp options được dùng trong quá trình khởi chạy ConsumerApi, cho phép đặt địa chỉ FleetEngine một cách linh động. Nếu API không được gọi bằng giá trị FleetEngine, thì API sẽ tìm cách tìm nạp giá trị đó từ tệp kê khai Android hoặc quay lại giá trị mặc định.

Những điểm cải tiến

  • Đường nhiều đoạn của tuyến đường sẽ không xuất hiện khi trạng thái chuyến đi là ARRIVED_AT_PICKUP.
  • Đã cải thiện tính năng theo dõi xe đi sai lộ trình (yêu cầu DriverSDK 1.15):
    • Tính năng theo dõi xe không điều chỉnh xe cho khớp với tuyến đường khi xe lái xe qua điểm đón.
    • Tính năng theo dõi xe cho phép hiển thị xe khi xe không ở trên đường, ví dụ: trong bãi đậu xe chưa được lập bản đồ.
  • Giờ đây, biểu tượng xe sẽ cập nhật khi đích đến của người lái xe không khớp với đích đến trong Fleet Engine.

phiên bản 0.8.6 (Ngày 16 tháng 12 năm 2019)

Nội dung thay đổi đối với API

  • Thêm TripInfo.getVehicleLocation().

  • ConsumerMapView không còn là phiên bản cuối cùng nữa.

Các thay đổi về việc triển khai

  • Giờ đây, khoảng cách còn lại của chặng đang hoạt động được tính bằng khoảng cách trên máy chủ (do tài xế báo cáo + tuyến đường tĩnh nếu có) thay vì tính năng gắn kết cục bộ. Thay đổi này tạo ra các giá trị khoảng cách còn lại chính xác hơn.

Các thay đổi khác

  • Cần có các phần phụ thuộc mới. Hãy xem tệp .pom để biết thông tin chi tiết.

    • 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
  • Thêm nhật ký cho độ trễ của yêu cầu chuyến đi.

  • Đã thêm nhật ký cho các lỗi phản hồi về chuyến đi.

Ghi chú

  • Kể từ phiên bản 0.8.1, Consumer SDK cho Android sẽ được phân phối dưới dạng tệp lưu trữ zip đã được jetify. Để biết thông tin về cách xoá Jetifier, hãy xem phần Jetifier: Chế độ đảo ngược.

v0.8.1 (Ngày 13 tháng 9 năm 2019)

Tính năng mới

Nội dung thay đổi đối với API

  • Đã thêm ConsumerController.disableAutoCamera() làm hàm đối lập với centerMapForState().

  • VehicleLocation.getUpdateTime() hiện trả về một Long biểu thị dấu thời gian (tính bằng mili giây).

  • Đơn giản hoá giao diện AuthTokenFactory để hiển thị một phương thức duy nhất cho việc tạo mã thông báo. Thay đổi AuthTokenFactory từ giao diện thành một lớp trừu tượng để bật khả năng tương thích ngược trong Java7. Thay đổi này có khả năng tương thích ngược, nhưng các phương thức cũ để tạo mã thông báo dịch vụ đơn lẻ đã ngừng hoạt động và cuối cùng sẽ bị xoá.

Các thay đổi về việc triển khai

  • Các thành phần hiện được căn giữa với tâm biểu tượng, loại bỏ độ lệch bóng.

  • setState thành JOURNEY_SHARING onStartTripMonitoring() thay vì chờ trạng thái của Chuyến đi được theo dõi.

  • Luôn trả về dữ liệu cho lần cập nhật dữ liệu đầu tiên của chuyến đi, ngay cả khi dữ liệu chuyến đi không được đồng bộ hoá.

  • Đã thêm Android Map Utils làm phần phụ thuộc được cung cấp.

Sửa lỗi

  • Đã sửa cú pháp xuất proguard bị hỏng cho grpc keep.

Phiên bản 0.7.0 (Ngày 7 tháng 8 năm 2019)

Tính năng mới

  • Hỗ trợ nhiều điểm đến cho tính năng Chia sẻ hành trình.

Nội dung thay đổi đối với API

  • Các phương thức mới cho ConsumerTripCallback.

    • onTripIntermediateDestinationsUpdated().
    • onTripETAToNextTripWaypointUpdated().
  • Các phương thức ConsumerController mới.

    • getIntermediateDestinations().
    • setIntermediateDestinations(List<TerminalLocation> intermediateDestinations).
  • TripStatuses mới.

    • TripStatus.ENROUTE_TO_INTERMEDIATE_DESTINATION.
    • TripStatus.ARRIVED_AT_INTERMEDIATE_DESTINATION.
  • Các phương thức getter TripWaypoint mới.

    • getETAMillis().
    • getDistanceMeters().
  • Thêm lớp TripInfo.

    • Bạn có thể lấy TripInfo cho chuyến đi đang hoạt động bằng ConsumerTripManager.getActiveTripInfo().
  • Thêm WaypointType.INTERMEDIATE_DESTINATION.

  • Thêm MarkerType.TRIP_INTERMEDIATE_DESTINATION.

  • Tạo ConsumerMapState.JOURNEY_SHARING từ ConsumerMapStates, ENROUTE_TO_PICKUP, ARRIVED_AT_PICKUP, ENROUTE_TO_DROPOFFCOMPLETE đã hợp nhất.

    • Đã cập nhật StateChangeCallbacks.

    • Thêm onStateJourneySharing().

    • Đã xoá onStateWaitingForPickup(), onStateDriverArrived(), onStateEnroute()onStateEndofTrip().

Sửa lỗi

  • Khắc phục lỗi tuyến đường không được cắt bớt theo vị trí của xe khi tính năng giám sát chuyến đi bắt đầu ở giữa một chuyến đi đang hoạt động (không phải ở đầu tuyến đường).

  • Khắc phục lỗi trong đó các lệnh gọi lại chuyến đi không được gọi cho những trình nghe đã đăng ký trên TripManager sau khi TripManager đã tìm nạp dữ liệu chuyến đi.

  • Chế độ thu phóng camera hiện chỉ bao gồm tuyến đường đang hoạt động và điểm tham chiếu tiếp theo của chuyến đi (điểm tham chiếu thuộc chuyến đi). Ngay cả khi đoạn đường còn lại hiển thị, chế độ thu phóng sẽ không bao giờ bao gồm đoạn đường đó. Trước đây, điểm trả khách được đưa vào chế độ thu phóng khi xe đang trên đường đến đón hoặc đã đến đón. Điều này không còn đúng nữa.

Những điểm cải tiến

  • Điền sẵn điểm đánh dấu còn lại thứ 0 bằng dữ liệu của Người lái xe (danh sách điểm đánh dấu còn lại được trả về từ ConsumerTripCallback.onTripRemainingWaypointsUpdatedTripInfo.getRemainingWaypoints().

  • Cập nhật tất cả thời gian đến dự kiến còn lại của điểm đánh dấu khi thời gian đến dự kiến của điểm đánh dấu đầu tiên trong danh sách thay đổi.

  • Chỉ buộc bật lại camera tự động khi tài xế đến điểm đón. Trước đây, camera tự động sẽ đặt lại thành trạng thái bật cho mọi thay đổi về trạng thái chuyến đi. Theo mặc định, tính năng Autocamera vẫn được bật. Autocamera sẽ không bật lại nếu bạn đặt một chuyến đi đang hoạt động mới mà không gọi lại startTripMonitoring().

v0.6.1 (ngày 26 tháng 6 năm 2019)

Tính năng mới

  • Hỗ trợ đi chung xe cho tính năng chia sẻ hành trình.

Nội dung thay đổi đối với API

  • ConsumerController.getConsumerMapStyle() hiện trả về ConsumerMapStyle thay vì Task<ConsumerMapStyle>.

  • Thêm PolylineStyle.setZIndex().

Sửa lỗi

  • Giờ đây, ảnh động về tuyến đường chỉ xuất hiện khi đoạn đường được đồng bộ hoá, nhờ đó cải thiện trải nghiệm người dùng.

  • Khắc phục hiện tượng "nhấp nháy" của xe trong quá trình nội suy hiệu ứng chuyển động khi các bản cập nhật vị trí của người lái xe ở gần nhau.

  • Khắc phục lỗi khi xe bắt đầu ở đầu tuyến đường thay vì ở vị trí mới cập nhật nhất khi tính năng giám sát chuyến đi bắt đầu ở giữa một chuyến đi đang hoạt động.

  • Hiển thị đường đa tuyến của tuyến đường đang hoạt động phía trên tuyến đường còn lại khi chúng trùng nhau.

Những điểm cải tiến

  • Giờ đây, hãy hiển thị lớp gRPC Status bằng các phương thức không bị làm rối mã nguồn.

v0.5.1.01 (Ngày 17 tháng 5 năm 2019)

Tính năng mới

  • Hỗ trợ liên tục cho tính năng Chia sẻ hành trình.

Nội dung thay đổi đối với API

  • Lớp ConsumerController mới.

PolylineType

Giá trị cũ Giá trị mới
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

Giá trị cũ Giá trị mới
onTripRouteUpdated onTripActiveRouteUpdated
onTripRemainingDistanceUpdated onTripActiveRouteRemainingDistanceUpdated
onTripRemainingWaypointsUpdated()

ConsumerController

  • Giờ đây, bạn có thể đặt lệnh gọi lại cho các trạng thái mà không cần nhập trạng thái.
Phương thức Số nhận cuộc gọi lại
startPickupSelection setPickupSelectionCallback
startDropoffSelection setDropoffSelectionCallback
startTripPreview setTripPreviewSelectionCallback
  • ConsumerController.setLanguage(String languageCode) cho phép bạn đặt ngôn ngữ được dùng trong các lệnh gọi FleetEngine (ví dụ: cho nội dung mô tả điểm đến).

Những điểm cải tiến

  • Trạng thái chọn điểm trả khách hiện có một ghim có thể kéo.
  • Đã xoá ảnh động của camera ở trạng thái INITIALIZE.
  • Thay thế ManagedChannelBuilder bằng AndroidChannelBuilder.