API Bỏ qua vị trí trong ô tô

Tính năng này cho phép kiểm soát riêng quyền truy cập thông tin vị trí của các ứng dụng hỗ trợ người lái xe có trong danh sách cho phép và đi kèm với Android bằng nút chuyển "Sử dụng thông tin vị trí cho tính năng hỗ trợ người lái xe". Điều này cho phép các ứng dụng này truy cập thông tin vị trí ngay cả khi bạn tắt nút chuyển "Sử dụng vị trí".

  • Android 12 không cung cấp API công khai cho tính năng này. Ứng dụng hỗ trợ người lái nên yêu cầu thông tin cập nhật về vị trí như bình thường.
  • Android 13 trở lên phải đưa ra yêu cầu về vị trí để sử dụng LocationManager.requestLocationUpdates() và truyền vào một đối tượng LocationRequest được định cấu hình bằng LocationRequest.setAdasGnssBypass(true).

Sử dụng API bỏ qua vị trí công nghệ hỗ trợ dành cho người lái xe

Các phần sau đây mô tả cách sử dụng API bỏ qua vị trí công nghệ hỗ trợ dành cho người lái xe. Để tìm hiểu thêm về chính sách sử dụng, hãy xem Chính sách về danh sách cho phép bỏ qua vị trí.

Kiểm tra trạng thái của công tắc hỗ trợ người lái xe

Trên Android 13 trở lên, bạn có thể kiểm tra trạng thái của nút chuyển công nghệ hỗ trợ dành cho người lái xe trước khi yêu cầu thông tin cập nhật vị trí.

// Returns the current status of "Use location for driver assistance".
locationManager.isAdasGnssLocationEnabled();

Chạy lệnh Cầu gỡ lỗi Android (ADB)

Để phát triển và thử nghiệm, bạn có thể nhanh chóng kiểm tra hoặc thay đổi trạng thái của nút bật/tắt công nghệ hỗ trợ dành cho người lái xe mà không cần sử dụng phần Cài đặt vị trí.

  1. Cách sử dụng lệnh ADB để kiểm tra hoặc thay đổi trạng thái:
    // 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

Thiết lập quyền

Hãy xem phần sau đây để biết các bản phát hành Android theo phiên bản:

  1. Trong Android 12, các ứng dụng hỗ trợ người lái xe phải có quyền WRITE_SECURE_SETTINGS.
  2. Trong Android 13 trở lên, bạn cần có quyền LOCATION_BYPASS.

Thêm ứng dụng vào danh sách cho phép trên thiết bị của bạn

Trong thư mục etc/sysconfig:

  1. Thêm tên gói của ứng dụng vào tệp XML cấu hình hệ thống:
  2. <!-- In a xml file under etc/sysconfig–>
    <config>
    …
    <allow-adas-location-settings package="PACKAGE-NAME" />
    …
    </config>

Để đảm bảo gói của bạn xuất hiện trong giao diện người dùng của phần Cài đặt vị trí, hãy thêm tên gói vào config_locationDriverAssistancePackageNames.

Thêm URL của ứng dụng về thông tin công bố chính sách quyền riêng tư vào AndroidManifest.xml. Tên của siêu dữ liệu phải là privacy_policy.

<meta-data android:name="privacy_policy" android:value= privacy policy URL/>

Xoá nút chuyển "Dùng vị trí để hỗ trợ người lái xe"

Nếu không có ứng dụng hỗ trợ người lái xe dựa trên vị trí yêu cầu thông tin vị trí từ Android, bạn có thể đánh dấu khối mã là nội dung nhận xét để xoá nút chuyển cho phần Cài đặt vị trí.

  1. Mở packages/apps/Car/Settings/res/xml/location_settings_fragment.xml rồi đánh dấu đoạn mã sau là nội dung nhận xét.
    <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/>
  2. Sau khi xoá nút chuyển, hãy đặt config_defaultAdasGnssLocationEnabled thành false.

Chạy Bộ kiểm thử cho ô tô

Google cung cấp bài kiểm tra Bộ kiểm tra cho ô tô (ATS) để đảm bảo rằng tất cả các gói công nghệ hỗ trợ dành cho người lái xe trên một thiết bị đều đã được đưa vào danh sách cho phép của Google. Thử nghiệm được định cấu hình từ xa. Bạn không cần phải đợi đến bản phát hành ATS tiếp theo để thêm một gói mới. Bạn có thể tìm hiểu thêm tại phần Hoàn tất các bài kiểm thử ô tô trong một hộp.