共同學習,共同進步, 轉載請注明出處。歡迎微信交流:sfssqs,申請注明"Android Car"字樣
================= =========================
https://developer.android.com/traning/auto/start/index.xml
讓我們一起來學習Android Auto
Android Auto繼承自Android平台,服務汽車系統。手持設備需運行在Android5.0或更高的版本,當用戶將它連接到兼容的車機上時,Auto提供的接口在汽車的中控屏幕與手持設備的應用交互。用戶通過語音或者車內的諸如觸摸屏、儀表按鈕等方式與兼容的應用或服務互動。
Auto目前支持兩種類型應用場景:
- 音頻類型,允許用戶瀏覽和播放音樂和通過車內的mic說話。
- 短信類型,接收信息通知,通過text-to-speech聽消息,通過車內的mic回復信息。
開發者目前在手機、平板中運行的音頻、消息類型應用,可以被改造成Auto的方式,而不必擔心汽車硬件實現上的差異。為了能讓app在車上運行,app的目標設備必須是Android5.0(API level21)或以上。manifest中還需要聲明使用的汽車類型,如音頻播放類型或者信息服務類型。
本文講述了如果構建Auto應用,包括開發環境配置,基本環境要求等。
建立一個Auto工程
——————————
這部分描述了如何新建一個Auto類型的App或者修改現有的Android App來支持Auto使用。
准備工作
建立汽車應用之前,需要:
- 新建或者更新app工程-Android 5.0(API level 21)提供了新的接口,實現了汽車音頻播放和信息相關功能的兼容。為了能使用新接口,工程manifest中的targetSdkVersion要設置成Android 5.0(API level 21)或者更高。
- 安裝支持庫 - 如果你正在建立汽車中messaging相關的應用,需要v4 support library中的NotificationCompat.CarExtender類。這個類允許建立與汽車設備兼容的通知。
聲明汽車屬性
App接入Auto功能被manifest設置和獨立的XML配置文件控制。在添加Auto功能之前,先要定義Auto XML配置文件,並在manifest入口引用這個文件。
1. 定義Auto XML配置文件
XML放在目錄(res/xml)。例如,擴展一個汽車上的音頻APP,創建文件automotive_app_dec.xml放在工程的res/xml文件夾下。文件中包含以下元數據:
<automotiveApp> <uses name=“media” /> </automotiveApp>
<uses>元素定義了App要使用的Auto屬性。可以同時添加多個<uses>標簽以便支持多個Auto屬性。支持的屬性有:
- media-App使用Android框架的在汽車上播放音樂的API。如果想要在App中支持音頻,設置這個值。
- notification-在車機屏幕上顯示消息通知,允許用戶選擇一條消息來讀,也可以通過語音輸入回復。如果想要支持消息類型的功能,設置這個值。
2. 添加manifest入口
在AndroidManifest.xml文件中對Auto XML配置文件的引用。在<application>元素下添加”com.google.android.gms.car.application”元數據並引用配置文件。要去掉.xml的文件后綴。
以下代碼展示如何在manifest中添加飲用。
<application> … <meta-data android:name=“com.google.android.gms.car.application” android:resource=“@xml/automotive_app_desc”/> </application>
在App中添加Auto的功能
完成以上步驟,可以准備在App中添加Auto功能了。查閱更多Auto App的文檔
- 為汽車添加音頻播放功能
- 為汽車添加信息收發功能
重要:Google對分散駕駛員注意力的場景非常慎重。所以定義了一套設計規范,想要上架Google Play必須遵守。堅守設計規范的要求會大大減少App的重建和測試。更多信息請關注-Auto App Quality。