這項功能可讓您透過「使用位置資訊提供駕駛輔助功能」切換鈕,分別控管許可清單中 Android 隨附的駕駛輔助應用程式的位置存取權。這樣一來,即使關閉「使用位置資訊」切換鈕,這些應用程式也能存取位置資訊。
- Android 12 不會為這項功能提供公開 API。駕駛輔助應用程式應照常要求位置更新通知。
- Android 13 以上版本必須提出位置要求才能使用
LocationManager.requestLocationUpdates()
,並傳入以LocationRequest.setAdasGnssBypass(true)
設定的LocationRequest
物件。
使用駕駛輔助位置略過 API
以下各節說明如何使用駕駛輔助位置繞過 API。如要進一步瞭解使用政策,請參閱「地點略過功能許可清單政策」。
檢查駕駛輔助系統開關狀態
在 Android 13 以上版本中,您可以在要求位置更新之前,先檢查駕駛輔助切換鈕狀態。
// Returns the current status of "Use location for driver assistance". locationManager.isAdasGnssLocationEnabled();
執行 Android Debug Bridge (ADB) 指令
在開發和測試期間,您可以快速檢查或變更駕駛輔助功能切換鈕的狀態,而無需使用位置設定。
- 如要使用 ADB 指令查看或變更狀態,請按照下列步驟操作:
// Gets the status of ADAS location. adb shell cmd location is-adas-gnss-location-enabled // Enables ADAS location. adb shell cmd location set-adas-gnss-location-enabled true // Disables ADAS location. adb shell cmd location set-adas-gnss-location-enabled false
設定權限
如需特定 Android 版本的資訊,請參閱以下內容:
- 在 Android 12 中,駕駛輔助應用程式必須具備 WRITE_SECURE_SETTINGS 權限。
- 在 Android 13 以上版本中,必須具備
LOCATION_BYPASS
權限。
將應用程式加入裝置的許可清單
在 etc/sysconfig
目錄中:
- 在系統設定 XML 檔案中新增應用程式的套件名稱:
<!-- In a xml file under etc/sysconfig–> <config> … <allow-adas-location-settings package="PACKAGE-NAME" /> … </config>
為確保套件會顯示在位置設定 UI 中,請將套件名稱加入 config_locationDriverAssistancePackageNames
。
將應用程式的隱私權政策揭露網址新增至 AndroidManifest.xml
。中繼資料的名稱應為 privacy_policy
。
<meta-data android:name="privacy_policy" android:value= privacy policy URL/>
移除「開啟定位功能以便使用駕駛輔助功能」切換鈕
如果您沒有使用位置資訊的駕駛輔助應用程式,從 Android 要求位置資訊,您可以註解程式碼區塊,移除位置設定的切換鈕。
- 開啟
packages/apps/Car/Settings/res/xml/location_settings_fragment.xml
,然後將下列程式碼註解掉。<com.android.car.ui.preference.CarUiTwoActionSwitchPreference android:fragment="com.android.car.settings.location.AdasLocationFragment" android:key="@string/pk_location_driver_assistance_state_switch" android:title="@string/location_driver_assistance_toggle_title" android:summary="@string/location_driver_assistance_toggle_summary" settings:controller="com.android.car.settings.location.AdasLocationSwitchPreferenceController" settings:searchable="true"/> <com.android.car.settings.common.DividerPreference/>
- 移除切換鈕後,請將
config_defaultAdasGnssLocationEnabled
設為false
。
執行 Automotive 測試套件
Google 提供汽車測試套件 (ATS) 測試,可確保裝置上的所有駕駛輔助套件都已列入 Google 許可清單。測試已從遠端設定。您不必等到下次 ATS 版本發布,即可新增套件。如需進一步瞭解,請參閱「Complete Automotive Tests in a Box」。