このセクションでは、Consumer SDK for Android のリリースノートを示します。
2.3.0(2024 年 8 月 2 日)
API の変更
Cloud ベースのマップのスタイル設定のサポートを追加します。これにより、地図のスタイルを変更するたびにアプリのコードを更新しなくても、ユーザー向けにカスタマイズされた道路地図を作成できます。詳細については、Cloud ベースのマップのスタイル設定で地図のスタイルを設定するをご覧ください。
getServerTimeMillis()
メソッドをVehicleLocation
に追加して、 Fleet Engine が位置情報の更新を受信した時刻。
2.2.0(2024 年 5 月 7 日)
API の変更
- Jetpack Compose 統合のサポート API を追加しました。これは試験運用版です 説明します。Jetpack Compose との統合について詳しくは、 確認しましょう
2.1.0(2024 年 1 月 17 日)
バグの修正
- SDK が複数回初期化されたときに発生するクラッシュを修正 モニタリングします。
API の変更
- SDK によって作成された
GoogleMap
インスタンスを取得するメソッドを導入しました (ConsumerGoogleMap.getGoogleMap()
). - 車両(
ConsumerController.getConsumerMarker()
)を表すために SDK によって作成されたMarker
インスタンスを取得する API を導入しました。 - ルート共有中にクライアントが予測した時間と距離の更新を受け取る API(
ProjectedRouteEta
)を導入しました。
1.99.2(2023 年 11 月 3 日)
アプリケーションとは別のリモート プロセスから SDK が初期化されたときに発生するクラッシュを修正しました。
カメラ アニメーションの実行中に発生するクラッシュが発生し、 垂直方向または水平方向にパディングに十分なスペースがあること。これは最新のマップ レンダラでのみ発生します。
連続したルートの 1 つ目の区間がカットされるバグを修正しました。 2 つ目の区間が同じ道路を通る場合です
問題
- API インスタンスがすでに存在しているときに呼び出されると、
ConsumerApi.initialize()
は例外をスローします。この問題を回避するには、まずConsumerApi.getInstance()
を呼び出して、返されたTask
を評価し、API インスタンスがすでに存在するかどうかを判断します。
2.0.0(2023 年 9 月 15 日)
お知らせ: 互換性を破る変更
最小 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 を使用するアプリには、以下が必要になりました。 API 31 の
targetSdkVersion
、API 33 のcompileSdkVersion
、または 大きくなります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
が返されました API の有無を判断するために、ConsumerApi.getInstance()
による 事前に作成しておく必要があります。
お知らせ: 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(2023 年 8 月 31 日)
バグの修正
SDK ホスト アクティビティまたはフラグメントが破棄されたときに発生するクラッシュを修正しました。
MapView のディメンションが 0(または あります。
ルート ポリラインに車両の位置を投影する際に発生するクラッシュを修正しました。
改善内容
- ホストアプリがサイドローディングされたときに SDK がクラッシュしないようにします。 デフォルトのビジュアル リソースがありません。
1.99.0(2023 年 6 月 22 日)
バグの修正
小型画面とピクチャー イン ピクチャー モードでのレンダリングの問題を修正。
ジャーニー シェアリング中の車両のちらつきを修正。
1.2.1(2023 年 6 月 7 日)
バグの修正
- 経路の共有中に車両がちらつくバグを修正しました。
1.2.0(2022 年 11 月 21 日)
バグの修正
- 空白のトラフィックがレポートされる原因となっていたバグを修正
onTripActiveRouteTrafficUpdated
コールバック。
新機能
- "交通状況に対応するポリライン"の一般提供が開始されました。
1.1.2(2022 年 10 月 27 日)
バグの修正
TripModel
に対してJourneySharingSession
が複数回開始された後に、ルート ポリラインが消えるバグを修正しました。
お知らせ: Android 5 のサポート終了(2022 年 7 月 25 日)
v1.1.1 SDK バージョンでは、 API レベル 21 と 22 の両方について、Android 5 で実行されるアプリ。
具体的な内容:
Android アプリで実行されるコンシューマ SDK は、2023 年 6 月 30 日まで Android 5(API レベル 21)以上をサポートします。
2023 年 6 月 30 日以降は、Android API レベル 23 以降のみがサポートされます。 つまり、Android API レベル 21 と 22 のサポートを、 すべての SDK バージョンに適用されますつまり、Android 21 に関連するバグは または 22 の問題は修正されず、 SDK が正しく動作することを保証します。
バージョン 1.1.1(2022 年 7 月 25 日)
依存関係の変更
- サポートされる最小 Android API レベルを 21 にダウングレードします。
バージョン 1.1.0(2022 年 4 月 28 日)
- 内部の改善。
バージョン 1.0.19(2022 年 3 月 17 日)
バグの修正
ConsumerApi
クラスのメモリリークを修正しました。
バージョン 1.0.14(2021 年 11 月 30 日)
サポートされる最小 Android API レベルは 23 になりました。
API の変更
ConsumerTrip
クラスとConsumerTripManager
クラスの変更。- 一部のメソッド名を整理し、意味を明確にし、iOS プラットフォームに合わせました。
ConsumerTripCallback
、ConsumerTrip
、TripInfo
の変更。一部のクラス名を変更し、iOS との整合性を保つようにしました。導入日
TripModel
、TirpModelManager
、TripModelOptions
のサポートを終了ConsumerTrip
、ConsumerTripManager
、ConsumerTripOptions
。一部のメソッド名をクリーンアップしました。メソッドの JavaDoc コメントを修正または追加して、意味を明確にしました。
エラー処理が改善されました。
スタイルのカスタマイズ
サポートが終了した以前のラッパー
MarkerStyleOptions
とPolylineStyleOptions
は非推奨になり、MarkerOptions
とPolylineOptions
に置き換えられました。どちらも Maps SDK と共有されています。
障害のモニタリング
クラッシュ検出とロギングを追加しました。
- この機能を無効にすることができるようになりました。これは、クラッシュ モニタリングに関する大規模な地域全体の取り組みの一環として行われました。
認証の変更
- Authentication インターフェースから不要なメソッドを削除します。
ServiceType
パラメータを削除しました。
バージョン 0.9.28(2021 年 5 月 18 日)
API の変更
TripInfo
をパラメータとして使用するように、すべてのConsumerTripCallback
メソッドを更新しました。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
の難読化されていないコピーが含まれなくなりました。 - 特定のデバイスで交通ポリラインがちらつくバグを修正しました。トラフィック セグメントの端が丸くなりました。
バージョン 0.9.15(2020 年 10 月 7 日)
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(2020 年 7 月 15 日)
API の変更
- これはモジュール化されたアーキテクチャ、
データ専用レイヤ間のより明確な関係(たとえば、
ConsumerTripManager
など)とユーザー インターフェース レイヤ(JourneySharingSession
)。新しい GCP リソースへの移行については、 詳細については、モジュール化の移行 ガイドをご覧ください。 -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
バージョン 0.9.1(2020 年 3 月 23 日)
API の変更
TripInfo.getVehicleId()
、TripInfo.getNumberOfPassengers()
を追加しました。TripInfo.getIntermediateDestinationIndex()
,TripInfo.getTripActiveRoute()
、TripInfo.getTripRemainingRoute()
。ConsumerApi
の初期化中に使用されるoptions
クラスを追加しました。これにより、FleetEngine
のアドレスが動的に設定されます。API が terraform plan またはFleetEngine
値を渡すと、Android マニフェストから取得するか、 それ以外の場合はデフォルト値にフォールバックします
改善内容
- ルートのポリラインは、ルートのステータスが
ARRIVED_AT_PICKUP
の場合に表示されません。 - ルート外を走行する車両の追跡が改善されました(DriverSDK 1.15 が必要です)。
- 車両トラッキングで、車両がルートにスナップされない 乗車地点を通過します。
- 車両トラッキングでは、道路以外の場所(地図に登録されていない駐車場など)に駐車している車両を表示できます。
- ドライバーの目的地が Fleet Engine の目的地と一致しない場合に、車両アイコンが更新されるようになりました。
v0.8.6(2019 年 12 月 16 日)
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 for Android は Jetify された zip として出荷されます。 アーカイブできますジェット化を解除する方法については、Jetifier: リバース モードをご覧ください。
バージョン 0.8.1(2019 年 9 月 13 日)
新機能
ConsumerMapView のサポート。
ODRD アーティファクトは、.aar zip ファイルではなく Maven リポジトリでリリースされるようになりました。 詳しくは、Consumer SDK をアプリに追加するをご覧ください。
API の変更
逆関数として
ConsumerController.disableAutoCamera()
を追加しましたcenterMapForState()
。VehicleLocation.getUpdateTime()
が Long を返すようになりました。 タイムスタンプ(ミリ秒単位)。AuthTokenFactory
インターフェースを簡素化し、トークン生成用の単一のメソッドを公開しました。Java7 で下位互換性を有効にするため、AuthTokenFactory
をインターフェースから抽象クラスに変更しました。この変更は 下位互換性がありますが、単一サービス トークン生成の古いメソッドは 非推奨となり、最終的に削除されます。
実装の変更
アセットがアイコンの中央に配置されるようになり、シャドウのオフセットが解消されました。
モニタリング中のルートのステータスを待機する代わりに、
setState
をJOURNEY_SHARING onStartTripMonitoring()
に変更しました。ルートデータがない場合でも、最初のルートデータ更新のデータを常に返します あります。
指定された依存関係として Android Map Utils を追加しました。
バグの修正
- grpc keep の破損した ProGuard エクスポート構文を修正しました。
バージョン 0.7.0(2019 年 8 月 7 日)
新機能
- 経路の共有でマルチデスティネーションがサポートされるようになりました。
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
クラスを追加しました。ConsumerTripManager.getActiveTripInfo()
を使用して、アクティブなルートのTripInfo
を取得できます。
WaypointType.INTERMEDIATE_DESTINATION
を追加しました。MarkerType.TRIP_INTERMEDIATE_DESTINATION
を追加しました。結合された
ConsumerMapStates
からConsumerMapState.JOURNEY_SHARING
を作成しましたENROUTE_TO_PICKUP
、ARRIVED_AT_PICKUP
、ENROUTE_TO_DROPOFF
、COMPLETE
。StateChangeCallbacks
を更新しました。onStateJourneySharing()
を追加しました。onStateWaitingForPickup()
、onStateDriverArrived()
、onStateEnroute()
、onStateEndofTrip()
を削除しました。
バグの修正
ルート モニタリングがアクティブなルートの途中(ルートの先頭ではなく)で開始されたときに、ルート車両の位置にトリミングされないバグを修正しました。
登録済みのリスナーに対してルート コールバックが呼び出されないバグを修正しました TripManager がルートデータをすでに取得した後に Tripmanager が呼び出す
カメラのズームにアクティブなルートと次のルートの地点のみが含まれるようになりました (ルートに属するウェイポイント)。残りの脚が見える場合でも、ズームに含まれることはありません。これまで、車両が集荷に向かっているときや集荷に到着したときに、集荷場所がズームに含まれていました。これはもはや正しくありません。
改善内容
残り 0 番目の地点にドライバーのデータ(残りの地点)を入力する
ConsumerTripCallback.onTripRemainingWaypointsUpdated
からリストが返されます およびTripInfo.getRemainingWaypoints()
。リスト内の最初のウェイポイントまでの所要時間が変更されたら、残りのすべてのウェイポイントの所要時間を更新します。
ドライバーが乗車場所に到着した場合にのみ、自動カメラを強制的に再度有効にします。以前は、ルートの状態が変更されるたびに、自動カメラが有効にリセットされていました。自動カメラは デフォルトで有効になっています。新しいアクティブなルートがある場合、自動カメラは再度有効になりません
startTripMonitoring()
を新たに呼び出しずに設定されます。
バージョン 0.6.1(2019 年 6 月 26 日)
新機能
- 相乗り車両での移動経路の共有をサポート。
API の変更
ConsumerController.getConsumerMapStyle()
がConsumerMapStyle
を返すようになりました 」を使用します。Task<ConsumerMapStyle>
PolylineStyle.setZIndex()
を追加しました。
バグの修正
ルート アニメーションは、ルート セグメントが同期されている場合にのみ行われるようになり、ユーザー エクスペリエンスが向上しました。
車両の「ちらつき」を修正しましたアニメーションの補間中に 場所の更新が近い、
アクティブなルートの途中でルート モニタリングが開始されたときに、車両が最新の位置ではなくルートの先頭から開始されるバグを修正しました。
アクティブなルート ポリラインが他のルートに重なっている場合は、他のルートの上に表示します。
改善内容
- 次に、難読化されていないメソッドを使用して gRPC
Status
クラスを公開します。
バージョン 0.5.1.01(2019 年 5 月 17 日)
新機能
- ジャーニー共有の連続サポート。
API の変更
- 新しい
ConsumerController
クラス。
PolylineType
Old Value(元の値) | 新しい値 |
---|---|
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
Old Value(元の値) | 新しい値 |
---|---|
onTripRouteUpdated |
onTripActiveRouteUpdated |
onTripRemainingDistanceUpdated |
onTripActiveRouteRemainingDistanceUpdated |
onTripRemainingWaypointsUpdated() |
ConsumerController
- 状態に入ることなく、状態のコールバックを設定できるようになりました。
メソッド | コールバック |
---|---|
startPickupSelection |
setPickupSelectionCallback |
startDropoffSelection |
setDropoffSelectionCallback |
startTripPreview |
setTripPreviewSelectionCallback |
ConsumerController.setLanguage(String languageCode)
を使用すると、 FleetEngine 呼び出しで使用される言語(ピックアップ ポイントの説明、 例です)。
改善内容
- ドロップオフの選択状態にドラッグ可能なピンが追加されました。
INITIALIZE
状態のカメラ アニメーションを削除しました。ManagedChannelBuilder
をAndroidChannelBuilder
に置き換えました。