自動車向けアプリ
最新の更新 | 安定版リリース | リリース候補版 | ベータ版リリース | アルファ版リリース |
---|---|---|---|---|
2023 年 2 月 22 日 | 1.2.0 | 1.3.0-rc01 | - | 1.4.0-alpha01 |
依存関係の宣言
Car App Library への依存関係を追加するには、Google の Maven リポジトリをプロジェクトに追加する必要があります。詳しくは、Google の Maven リポジトリをご覧ください。
アプリまたはモジュールの build.gradle
ファイルに、必要なアーティファクトの依存関係を追加します。
Groovy
dependencies { implementation "androidx.car.app:app:1.2.0" // For Android Auto specific functionality implementation "androidx.car.app:app-projected:1.2.0" // For Android Automotive specific functionality implementation "androidx.car.app:app-automotive:1.2.0" // For testing testImplementation "androidx.car.app:app-testing:1.2.0" }
Kotlin
dependencies { implementation("androidx.car.app:app:1.2.0") // For Android Auto specific functionality implementation("androidx.car.app:app-projected:1.2.0") // For Android Automotive specific functionality implementation("androidx.car.app:app-automotive:1.2.0") // For testing testImplementation("androidx.car.app:app-testing:1.2.0") }
依存関係について詳しくは、ビルド依存関係の追加をご覧ください。
フィードバック
お寄せいただいたフィードバックは Jetpack 改善の参考にさせていただきます。新しい問題が見つかった場合や、このライブラリを改善するアイデアをお持ちの場合は、お知らせください。新しい問題を報告していただく前に、このライブラリの既存の問題をご確認ください。スターボタンをクリックすると、既存の問題に投票できます。
詳細については、Issue Tracker のドキュメントをご覧ください。
バージョン 1.4
バージョン 1.4.0-alpha01
2023 年 2 月 22 日
androidx.car.app:app-*:1.4.0-alpha01
がリリースされました。バージョン 1.4.0-alpha01 に含まれる commit については、こちらをご覧ください。
API の変更
- 自動車向けアプリ ライブラリの
GridTemplate
にトップレベルのアクションを追加しました(Id0191) - 自動車向けアプリ ライブラリの
ListTemplate
にトップレベルのアクションを追加しました(I9efab) - メディア アイテムのサブタイトルまたはその説明を他のメディア アイテムにリンクするエクストラを追加しました(Ic84bf)
- 行アクションの API レベルをレベル 6 に更新しました。(Ie0a69)
- A4C にメッセージ コールバックを追加しました(Ie3986)
バグの修正
CarMessage
で欠落している Java ドキュメントの参照を追加しました。(I5db1c)ConversationItem
とCarMessage
のequals()
とhashCode()
をオーバーライドしました(I6fd10)ConversationItem.mMessages
の検証を改善しました(null 以外、空ではないことを必須にします)(Iafc51)@Keep
アノテーションをConversationItem
フィールドに追加しました(I5d250)- 行の装飾とセカンダリ アクションの Java ドキュメントを更新しました。(I000b6)
バージョン 1.3
バージョン 1.3.0-rc01
2022 年 12 月 7 日
androidx.car.app:app-*:1.3.0-rc01
がリリースされました。バージョン 1.3.0-rc01 に含まれる commit については、こちらをご覧ください。
- beta01 の軽微なバグを修正しました。大きな変更はありません。
バージョン 1.3.0-beta01
2022 年 9 月 7 日
androidx.car.app:app:1.3.0-beta01
、androidx.car.app:app-projected:1.3.0-beta01
、androidx.car.app:app-automotive:1.3.0-beta01
、androidx.car.app:app-testing:1.3.0-beta01
がリリースされました。バージョン 1.3.0-beta01 に含まれる commit については、こちらをご覧ください。
- このライブラリを使用して作成された自動車向けアプリでは、API レベル 5 を使用して Play ストアにアクセスできるようになりました(デベロッパー ガイドをご覧ください)。API レベル 5 以下のアノテーションが付けられた機能は、Android Auto 8.1 以降と Google Automotive App Host 1.4 以降の両方と互換性があります。
新機能
Car App Library 1.3.0-alpha01 で追加された機能に加え、beta01 に次の機能が追加されました(ここで示しているすべての機能は、API の変更がないホスト側の変更のみです)。
- ユーザーが
PlaceListNavigationTemplate
、RoutePreviewNavigationTemplate
、MapTemplate
で地図ベースの選択画面を表示している場合でも、フローティング ナビゲーション バーが引き続き表示されるようになります。表示されるようにするには、NavigationManager.updateTrip()
を使用してナビゲーション情報を更新します。 FLAG_DEFAULT
でアクション ボタンを有効にすると、タイムアウト アニメーションが表示されます。このボタンは、タイムアウト後にデフォルトでクリックされます。([API 5 - All Templates]
)Row
サブテキストは、駐車中はすべて表示されますが、運転中に表示されるのは 2 行のみです。([API 5 - All Templates]
)Action
、Toggle
、Row
([API 5 - All Templates]
)の無効状態をサポートしました。
API の変更
- 選択可能リストをサポートするように
MapTemplate
リストの制約を緩和しました。(I961ed) - ヘッダー アクションの制約を解除して、カスタム アイコンが利用できるようにしました。(Iad28f)
- 制約
setOnClickListenerAllowed()
をActionsConstraints
に追加しました。それによって、Action
でOnClickDelegate()
を標準のアイコンタイプ以外のアクションに設定できるようなりました(TYPE_APP_ICON
、TYPE_BACK
、TYPE_PAN
)。(I3c745)
バグの修正
- Android Automotive Template Host 1.4 以降に曲面ディスプレイに対する互換性を追加しました。(
[Host change]
)
バージョン 1.3.0-alpha01
2022 年 7 月 27 日
androidx.car.app:app:1.3.0-alpha01
、androidx.car.app:app-projected:1.3.0-alpha01
、androidx.car.app:app-automotive:1.3.0-alpha01
、androidx.car.app:app-testing:1.3.0-alpha01
がリリースされました。バージョン 1.3.0-alpha01 に含まれる commit については、こちらをご覧ください。
API レベル 5 のアノテーションが付けられた機能は、Android Auto 7.9 以降と互換性があります。
新機能
- API レベル 5: ナビゲーション アプリがマップと一緒にペインを表示したり、コンテンツのリストを表示したりするために使用できる新しい
MapTemplate
(If5826、If44b8) - API レベル 5: ホスト車両のマイクを介した音声入力を録音できる新しい
CarAudioRecord
API(I5e71a) - API レベル 5: アプリがホストに提案を行うための新しい
SuggestionManager
API(I5c103) - API レベル 5:
NavigationTemplate
の通知をコンテキスト内に表示する新しいAlert
API(I163a7、I5ad70) - API レベル 5: テンプレート間での再利用を促進する新しい
Header
コンポーネントとMapController
コンポーネント(If5826) - POI アプリを有効にするカテゴリとして
androidx.car.app.category.POI
を追加しました(androidx.car.app.category.PARKING
とandroidx.car.app.category.CHARGING
のサポートは終了)(I59da1)
API の変更
- API レベル 5: 地図上でのタップのインタラクティビティを実現する
SurfaceCallback
インターフェースの新しいonClick
メソッド(Ia9777) - API レベル 5:
Action
を記述する新しいフラグAction.FLAG_IS_PERSISTENT
とAction.FLAG_DEFAULT
(I96318、I5ad70) - API レベル 5:
Action
、Row
、Toggle
コンポーネントの新しい有効 / 無効状態(ホストのサポートはライブラリの 1.3.0-beta01 リリースで追加予定)(Id8a09) - API レベル 5:
PlaceListNavigationTemplate.Builder
およびRoutePreviewNavigationTemplate.Builder
のsetHeader
を使用したHeader
コンポーネントを優先し、既存のsetTitle
およびsetHeaderAction
メソッドのサポートを終了(I30e6a) - API レベル 5: 新しい
OnContentRefreshListner
インターフェースの実装で使用する、PlaceListMapTemplate.Builder
とPlaceListNavigationTemplate.Builder
の新しいsetOnContentRefreshListner
メソッド - API レベル 5: 旅行の見積もりカードをカスタマイズするための、
TravelEstimate.Builder
の新しいsetTripText
とsetTripIcon
(Idcc6d、Ic620d) PaneTemplate
のタイトルにCarIconSpan
のサポートを追加(Ia1ee0)Row
のタイトルとテキストにCarIconSpan
のサポートを追加(Ic1e3c)- マップ
ActionStrip
で最大 4 つのアクションが設定可能になりました(If3522) - Car App API レベルを 5 に更新(I26b8e)
PlaceListMapTemplate
、PlaceListNavigationTemplate
、RoutePreviewNavigationTemplate
、GridTemplate
、ListTemplate
、LongMessageTemplate
、MessageTemplate
、PaneTemplate
、SignInTemplate
ではヘッダーとタイトルがオプションになりました(I2078D、Icadde)
バグの修正
- 正方形の境界ボックスにするよう
PaneTemplate
の画像サイズ設定ルールを更新しました(Idd72e) State.DESTROYED
の後に画面スタックが変更された場合に発生する例外を修正しました(I3c8eb)- アプリアイコンの取得時の null チェックを追加しました(I3f710)
- デフォルトで
STATUS_UNAVAILABLE
ではなくSTATUS_UNKNOWN
を使用するように Car Hardware API を更新(Ic9444) - サーフェスを作成する前にディスプレイが存在するかどうかを確認(Ice027a)
STATUS_UNIMPLEMENTED
に関連するCarValue.equals()
のバグを修正(I24451)
バージョン 1.2
バージョン 1.2.0
2022 年 11 月 9 日
androidx.car.app:app-*:1.2.0
がリリースされました。バージョン 1.2.0 に含まれる commit については、こちらをご覧ください。
- これは安定化リリースであり、v1.2.0-rc01 からの変更はありません。
バージョン 1.2.0-rc01
2022 年 3 月 23 日
androidx.car.app:app-*:1.2.0-rc01
がリリースされました。バージョン 1.2.0-rc01 に含まれる commit については、こちらをご覧ください。
- これは安定化リリースであり、
v1.2.0-beta02
からの API の変更はありません。今後の Android Auto と Android Automotive のリリース向けに、新しい試験運用版機能(API レベル 5)が追加されました。
バグの修正
State.DESTROYED
の後に画面スタックが変更された場合に発生する例外を修正しました(I3c8eb)CarSensors
API を更新して、AAOS 用には実装されていないことを示すようにしました(Idd57b)PlaceListMapTempalte.Builder#setCurrentLocationEnabled
を更新して、この機能には ACCESS_COARSE_LOCATION で十分であると示すようにしました(I510c2)- 角度を指定する環状交差点の運転タイプの場合、出口番号を省略可能にしました(Ife7d1)
バージョン 1.2.0-beta02
2022 年 1 月 26 日
androidx.car.app:app-*:1.2.0-beta02
がリリースされました。バージョン 1.2.0-beta02 に含まれる commit については、こちらをご覧ください。
Android Automotive OS
プラットフォームをターゲットとするこのライブラリ バージョンでビルドされた自動車向けアプリを、Play ストアのオープンテスト チャネルに公開できるようになりました。詳しくは、デベロッパー ガイドをご覧ください。
API レベル 4 以下のアノテーションが付けられた機能は、Android Auto
7.2 以降および新しい Android Automotive OS
プラットフォームの両方と互換性があります。注意点については、下記の Known Issues
セクションをご覧ください。
API の変更
- 試験運用版の
setOnContentRefreshListener
API を POI テンプレートに追加しました(I6bf22)
バグの修正
- 自動車ホストをアンバインドする際の
CarAppService
のメモリリークを修正しました(I5c9ca、b/203594731) CarAppActivity
Javadoc を更新し、singleTask 起動モードの要件を追加しました(Id2f95)- 再開時の視覚的な不具合を軽減しました(Iff7e0)
既知の問題
PlaceListNavigationTemplate
とRoutePreviewNavigateTemplate
のマップActionStrip
が、Android Auto
とAndroid Automotive OS
の次期リリースから利用可能になります。
バージョン 1.2.0-alpha02
2021 年 12 月 15 日
androidx.car.app:app-*:1.2.0-alpha02
がリリースされました。バージョン 1.2.0-alpha02 に含まれる commit については、こちらをご覧ください。
API レベル 4 のアノテーション付きの機能が、試験運用版から安定版にアップグレードされました。これには、PlaceListNavigationTemplate
と RoutePreviewNavigateTemplate
のマップ ActionStrip
、Pane
の CarIcon
画像、QRCodeSignInMethod
、Action
でのレンダリング ヒント(フラグなど)の設定機能などが含まれます。
新機能
- Android Auto 7.1 以降で、
Pane
の項目の上限が 2 個から 4 個に増えました。
API の変更
- 試験運用版の
toString()
メソッドをCarUnit
に追加しました(I36a3b)
バグの修正
- コールバックが反応しない場合に
CarAppPermissionActivity
で発生したクラッシュを修正しました(If9823) Pane
のデフォルト リストの上限を 4 個に変更しました(I0068b)
バージョン 1.2.0-alpha01
2021 年 11 月 3 日
androidx.car.app:app-*:1.2.0-alpha01
がリリースされました。バージョン 1.2.0-alpha01 に含まれる commit については、こちらをご覧ください。
v1.2.0
のすべての新機能(API 4 以上)は、現時点では Android Auto と Android Automotive OS の今後のリリースをターゲットとする試験運用版です。詳しくは、デベロッパー ガイドをご覧ください。
API の変更
AutomotiveCarInfo
API を試験運用版にしました(Ia13e5)- Car App Library API レベル 4 を追加しました(I2a2e7)
- API レベル 4:
Pane
にCarIcon
を設定するためのサポートを追加しました(Ifcc12) - API レベル 4: QR コードによるログイン メソッドを追加しました(Ib623e)
- API レベル 4:
Action
に setFlags / getFlags を追加しました(Ic03ab) - API レベル 4:
PlaceListNavigationTemplate
とRoutePreviewNavigationTemplate
にパンとズームのサポートを追加しました(I9d8a3)
バグの修正
- API レベル 4: アプリが自動車ホストに位置情報の更新データを送信するためのメカニズムを追加しました(I3bad3)
- ホスト検証ロジックで TEMPLATE_RENDERER 権限が適切に検出されなかった問題を修正しました(I62618)
バージョン 1.1.0
バージョン 1.1.0
2021 年 12 月 15 日
androidx.car.app:app-*:1.1.0
がリリースされました。バージョン 1.1.0 に含まれる commit については、こちらをご覧ください。
これは安定化リリースであり、v1.1.0-rc01
からの変更はありません。Car App ライブラリの新機能について詳しくは、v1.2.0-alpha02
のリリースノートもご覧ください。
1.0.0 以降の重要な変更
- API レベル 2: 車両の駐車中にログインフローに使用できる
SignInTemplate
とLongMessageTemplate
の追加 - API レベル 2:
NavigationTemplate
におけるマップ インタラクティビティ サポートの追加 - API レベル 2: 複数長のテキストのサポートを追加し、自動車画面サイズに応じて複数のバージョンの文字列をアプリで表示可能に
- API レベル 3: 車両のハードウェア データ(モデルまたは型、燃料レベル、その他のセンサーなど)のクエリに使用できる
CarHardwareManager
を追加
バージョン 1.1.0-rc01
2021 年 11 月 3 日
androidx.car.app:app-*:1.1.0-rc01
がリリースされました。バージョン 1.1.0-rc01 に含まれる commit については、こちらをご覧ください。
これは安定化リリースであり、v1.1.0-beta01
からの API の変更はありません。今後の Android Auto リリース向けの新しい試験運用版機能(API レベル 4)が追加されました。試験運用版 API について詳しくは、v1.2.0-alpha01
のリリースノートをご覧ください。
バージョン 1.1.0-beta01
2021 年 9 月 1 日
androidx.car.app:app-*:1.1.0-beta01
がリリースされました。バージョン 1.1.0-beta01 に含まれる commit については、こちらをご覧ください。
v1.1.0
機能(API 2 以降)はすべて、Android Auto 6.7 以降に完全に対応しています。詳しくは、デベロッパー ガイドをご覧ください。
API の変更
Manager
を公開インターフェースから削除しました(Ie381b)- 権限リクエストでカスタム ブランドの背景を設定する機能を追加しました(I74b76)
ScreenManager.getStackSize
を追加しました(I0b16a)- 明示的に
TestCarContext
を使用するScreenController
コンストラクタを削除しました(Iefebc)
バグの修正
CarHardwareManager
を作成するときに API レベルをチェックする機能を追加しました(I48f9b)- API 全体で
CarSpan
の無効な使用をチェックする機能を追加しました(I65ae6) Screen
の作成中に完了としてマークされると、スタックが壊れたままの状態になる問題を修正しました(I81b13)CarAppExtender
内にアイコンを含むアクションがある場合に、CarNotificationManager.notify
が Automotive OS のエラーをログに記録する問題を修正しました(I3633d)- API バージョンを確立するアプリとホストの handshake メソッドを追加しました(I7d6f8)
バージョン 1.1.0-alpha02
2021 年 7 月 21 日
androidx.car.app:app-*:1.1.0-alpha02
がリリースされました。バージョン 1.1.0-alpha02 に含まれる commit については、こちらをご覧ください。
新機能
- API レベル 3: 車両のハードウェア データ(モデルまたは型、燃料レベル、その他のセンサーなど)のクエリに使用できる
CarHardwareManager
を追加しました。現在、この機能はオープンテスト チャンネルの Android Auto 6.7 以上でのみ利用できます。デスクトップ環境でこの機能をテストするには、別個にリリースされる新しいバージョンのDesktop Head Unit
が必要です。新しいバージョンが利用可能になる時期については、自動車向け Android アプリをテストするをご確認ください。 - API レベル 3 と互換性のある自動車ホストでこれらの機能を使用する方法に関する追加情報と設計ガイドラインについては、デベロッパー ガイドとライブラリ リファレンスをご覧ください。
API の変更
SessionController
およびScreenController
ライフサイクル メソッドを単一のmoveToState
メソッドに統合しました(I1ed00)CarContext#getHostInfo()
を追加しました(I8977e)- サポートが終了したフィールドを削除しました(I67168)
- コンストラクタを直接公開するように
SessionController
とScreenController
を更新しました(Iabf22) PinSignInMethod.Builder
とProviderSignInMethod.Builder
を削除しました(I9f0cb)- AAOS でテンプレート化済みアプリの「for result」を使用できるようにするため、「setCarAppResult()」を追加しました(I37741)
CarHardware
インターフェースに@MainThread
アノテーションを付けました(Ib2f85)OnCarDataListener
の名前をOnCarDataAvailableListener
に変更しました(I518ca)CarInfo
、Speed
、Mileage
のメソッド名と javadoc を更新しました(I86672)Toll
の名前をTollCard
に変更しました(I3e7c8)- サポートが終了した
PinSignInMethod.getPin
を削除し、PinSignInMethod.getPinCode
に置き換えました(I996ce) OnInputCompletedListener
を削除しました(InputCallback
に置き換えました)(Ib5be1)String
ではなくCharSequence
を受け取るようにPinSignInMethod
を変更しました(I275d5)
バグの修正
- 自動車ハードウェア用の Javadoc を修正しました(I2abbc)
外部からの協力
既知の問題
SignInTemplate
でInputSignInMethod
を使用すると、自動車ホストでNullPointerException
が発生することがあります。この問題にはライブラリの次回のリリースで対応する予定です。この問題を回避するには、アプリの Proguard 構成に次の行を追加します:-keep class androidx.car.app.model.signin.InputSignInMethod { *; }
バージョン 1.1.0-alpha01
2021 年 6 月 16 日
androidx.car.app:app:1.1.0-alpha01
、androidx.car.app:app-automotive:1.1.0-alpha01
、androidx.car.app:app-testing:1.1.0-alpha01
がリリースされました。バージョン 1.1.0-alpha01 に含まれる commit については、こちらをご覧ください。
新機能
- API レベル 2: 車両の駐車中にログインフローに使用できる
SignInTemplate
とLongMessageTemplate
を新たに追加しました。 - API レベル 2:
NavigationTemplate
におけるマップ インタラクティビティ サポートを新たに追加しました。 - API レベル 2: 複数長のテキストのサポートを新たに追加し、自動車画面サイズに応じて複数のバージョンの文字列をアプリで表示できるようにしました。
- API レベル 2 と互換性のある自動車ホストでこれらの機能を使用する方法や設計のガイドラインについて詳しくは、デベロッパー ガイドとライブラリの Javadoc をご覧ください。
API の変更
- すべての
*Callback
インターフェース メソッドをデフォルトにし、名前をOnRequestPermissionsCallback
からOnRequestPermissionsListener
に変更しました(Ib3ec9) - 不要なビルダーとパラメータ クラスを削除するように
androidx.car.app.hardware
クラスを更新しました(I67beb) - 燃料、電池、速度など、自動車固有のデータにアクセスできるように
androidx.car.app.hardware
クラスを追加しました(Iff3c9) MessageTemplate
に対するActionStrip
のサポートを追加しました(Ida657)setLoading
をMessageTemplate
に追加しました(I2a4b5)ConnectionToCar
の名前をCarConnection
に変更しました(Ife9bd)- 明示的な
PanModeDelegate
を返すようにNavigationTemplate
を変更しました(I13877) CarContext.requestPermissions
のパラメータの順序を更新しました(Ib890a)- メタデータキーを更新し、自動車の最低 API レベルを
androidx.car.api.minCarApiLevel
に定義しました(Ib0d41) - 自動車の接続状態を監視できる API を作成しました(Ifc935)
Action
の切り替え設定のサポートを追加し、パンモードのAction
タイプを追加しました(Ica6af)- 自動車内の通知の送信をサポートするために
CarNotificationManager
を作成しました(I10d7a) - ホストからのリスト制限を行うための
ConstraintManager
を追加しました(I8690e) NavigationTemplate
にパンモードとマップ アクション ストリップ API を追加しました(I77aa6)- ナビゲーション アプリ用の
SurfaceCallback
にパンおよびズーム API を追加しました(Id5e9d) CarAppApiLevel
を 2 に更新しました(Ic1540)CarAppService
から権限をリクエストする機能を追加しました(I5421e)- Multi-text API に
RequiresCarApi(2)
アノテーションを追加しました(Iacb62) - ハーフリスト テンプレートのタイトルに複数のテキスト バリエーションを使用できるようにしました(Ib8df7)
- 新しい
LongMessageTemplate
を追加しました(Car API レベル 2 が必要)(Ic5cee)
バグの修正
- より大きな自動車の画面に対応するために、画像サイズの要件を更新しました(I116dc)
- テンプレート本文に 3 つ以上のアクションを追加できないようにしました(I32157)
- 自動車アプリ ライブラリ セットのフラグにすべての
PendingIntent
が作成されるようにしました。(If84fe、b/186394900) - 更新時に
Row
のテキストを変更できるように javadoc を更新しました(If3f9c) androidx.activity:activity:1.2.0
が API の依存関係になりました(Id1cb9)SignInTemplate
とLongMessageTemplate
を、これらの本文で駐車専用操作を要求するように設定し、これらの操作は駐車後にのみ表示されることを示すようにドキュメントを更新しました(Iddaa9)- 起動時に
Screen
をポップするときに発生する例外を修正しました(Ifcf40、b/184664896) ForegroundCarColorSpan
でカスタム テキストの色を使用できるようにしました(I69e59)Screen
のON_DESTROY
の後にSession
のON_DESTROY
が検出される問題を修正しました(I52e01、b/183696617)TravelEstimate
の残り時間を不明な時間に設定できる時点に関する javadoc を更新しました(I99610、b/183632456)- タイトルとカスタム背景色で
ForegroundColorSpan
をサポートするようにAction
を更新しました(I578e4 ) - エグゼキュータが実行する前にコールバックがクリアされている場合は
NavigationManagerCallback#onStopNavigation
を実行しないようにしました(I7fc5e、b/181143772) - lifecycle-common-java8 への依存関係を明示的にアプリに課す必要がある問題を修正しました(I8b8c8)
既知の問題
SignInTemplate
では、ユーザーが入力を確認するときに、画面キーボードに「入力」アイコンではなく「検索」アイコンが表示されます。この問題の回避策として、ユーザーは、入力フィールドがフォーカスされているときにアクティブになる、スマートフォン キーボードを使用できます。- Android Auto バージョン 6.5 では、一部のタップ操作に対して、
SurfaceCallback
のパンとズームのコールバックが誤って呼び出されることがあります。
Car App Testing バージョン 1.0.0
バージョン 1.0.0-alpha01
2021 年 3 月 24 日
androidx.car.app:app-testing:1.0.0-alpha01
がリリースされました。バージョン 1.0.0-alpha01 に含まれる commit については、こちらをご覧ください。
これは、従来のクローズド ソース テスト ライブラリにおける最初の Jetpack リリースです。テストでこのライブラリを使用する方法については、サンプルをご覧ください。
新機能
- モデルクラスのコントローラが削除されました。モデルゲッターが公開 API サーフェスの一部となり、ビルダーで設定された値を検証できるようになりました。
- ホストへの接続の存続期間に関連するロジックをテストするために、これまでの
CarAppServiceController
が新しいSessionController
に置き換えられました。
バージョン 1.0.0
バージョン 1.0.0
2021 年 4 月 21 日
androidx.car.app:app:1.0.0
がリリースされました。バージョン 1.0.0 に含まれる commit については、こちらをご覧ください。
1.0.0 の主な機能
- Google は 4 月上旬に、
androidx.car.app:app:1.0.0-rc01
を使用してアプリを製品版チャンネルに公開できるようになったことを発表しました。Car App Library v1.0.0 は安定版になり、Android Auto 6.1 以降に完全に対応しています。 - ライブラリを使用して Android Auto 用のナビゲーション アプリ、駐車場アプリ、充電アプリを作成する方法について詳しくは、デベロッパー ガイドをご覧ください。
バグの修正
- 起動時に
Screen
をポップするときに発生する例外を修正しました(70aae1、b/184664896) Screen
のON_DESTROY
の後にSession
のON_DESTROY
が検出される問題を修正しました(0ceecb、b/183696617)
バージョン 1.0.0-rc01
2021 年 3 月 24 日
androidx.car.app:app:1.0.0-rc01
がリリースされました。バージョン 1.0.0-rc01 に含まれる commit については、こちらをご覧ください。
バグの修正
- コールバックがクリアされた後に
NavigationManagerCallback#onStopNavigation
が呼び出されていた競合状態のバグを修正しました。この問題は、コールバックの実行側が実際に実行する前に、コールバックがクリアされた場合に発生します(I7fc5e、b/181143772) - アプリが
lifecycle-common-java8
に明示的に依存する必要がある問題を修正しました(I8b8c8) - すでにコールバックを削除しているときにアプリが
stopNavigation
呼び出しを受け取るとNullPointerException
がスローされる問題を修正しました(Ib8b89、b/181143772) - アプリのライフサイクルが少なくとも
CREATED
状態でない場合、アプリへの呼び出しをディスパッチしないように改善しました(I86965、b/179800224、b/177921120) - アプリのマニフェストに指定された無効な最小 API がスローされて、ホストで ANR が発生する問題を修正しました(Iffed、b/174231592)
バージョン 1.0.0-beta01
2021 年 2 月 24 日
androidx.car.app:app:1.0.0-beta01
がリリースされました。バージョン 1.0.0-beta01 に含まれる commit については、こちらをご覧ください。
これは、以前のクローズド ソース ライブラリの最初の Jetpack リリースで、Android Auto 6.1 以降と互換性があります。ライブラリを使用して自動車向けアプリを作成する方法について詳しくは、デベロッパー ガイドをご覧ください。
新機能
- UI 要素のリストをグリッド レイアウトで表示するためにアプリが使用できる
GridTemplate
を導入しました。 - ホスト接続が信頼できるソース(Android Auto など)からのものであることを検証する
CarAppService.createHostValidator
メソッドを導入しました。 CarAppExtender.Builder.setColor
API を追加しました。(b/174231592)
バグの修正
- 画面を順番にポップすると誤った
Screen
が再開される問題を修正しました(b/177590791)