ฟีเจอร์นี้ช่วยให้เข้าถึงตำแหน่งของรายการที่อนุญาต, แพ็กเกจ Android, ไดรเวอร์ แอปผู้ช่วยเพื่อควบคุมแยกต่างหากได้ด้วยปุ่ม "ใช้ตำแหน่งสำหรับผู้ขับ "ความช่วยเหลือ" ซึ่งทำให้แอปเหล่านี้สามารถเข้าถึงตำแหน่งได้แม้ในขณะที่ปุ่ม "ใช้ตำแหน่ง" สวิตช์ปิดอยู่
- Android 12 ไม่มี API สาธารณะสำหรับการดำเนินการนี้ แอปตัวช่วยของผู้ขับควรขออัปเดตตำแหน่งตามปกติ
- Android 13 ขึ้นไปต้องส่งคำขอตำแหน่ง
เพื่อใช้
LocationManager.requestLocationUpdates()
และผ่าน กำหนดค่าออบเจ็กต์LocationRequest
รายการด้วยแล้วLocationRequest.setAdasGnssBypass(true)
ใช้ 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 สิทธิ์
- ใน 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
เพิ่ม URL การเปิดเผยนโยบายความเป็นส่วนตัวของแอปลงใน 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
เรียกใช้ชุดทดสอบยานยนต์
Google มีการทดสอบ Automotive Test Suite (ATS) ที่ช่วยรับประกันว่าตัวช่วยของผู้ขับทั้งหมด แพ็กเกจบนอุปกรณ์ก็ได้รวมอยู่ในรายการที่อนุญาตของ Google แล้ว การทดสอบได้รับการกำหนดค่าจากระยะไกล คุณ ไม่ต้องรอจนกว่าจะมีการเปิดตัว ATS รุ่นถัดไปเพื่อเพิ่มแพ็กเกจใหม่ ดูข้อมูลเพิ่มเติมได้ที่ ทำการสอบรถยนต์ให้เสร็จได้ในกล่อง