Otomotiv Konum Atlama API'sı

Bu özellik, izin verilenler listesinde yer alan, Android ile birlikte verilen sürücü yardımı uygulamalarının konum erişiminin "Sürücü yardımı için konumu kullan" anahtarıyla ayrı olarak kontrol edilmesine olanak tanır. Bu, bu uygulamaların "Konumu kullan" anahtarı kapalıyken bile konuma erişmesine olanak tanır.

  • Android 12, bu özellik için genel bir API sağlamamaktadır. Sürücü yardımı uygulamaları her zamanki gibi konum güncellemeleri talep etmelidir.
  • Android 13 ve üzeri LocationManager.requestLocationUpdates() kullanmak için bir konum isteğinde bulunmalı ve LocationRequest.setAdasGnssBypass(true) ile yapılandırılmış bir LocationRequest nesnesini iletmelidir.

Sürücü yardımı konum atlama API'sini kullanın

Aşağıdaki bölümlerde sürücü yardımı konum atlama API'sinin nasıl kullanılacağı açıklanmaktadır. Kullanım politikası hakkında daha fazla bilgi edinmek için Konumu Atlama İzin Verilenler Listesi Politikası'na bakın.

Sürücü yardım anahtarı durumunu kontrol edin

Android 13 ve sonraki sürümlerde konum güncellemeleri istemeden önce sürücü destek anahtarının durumunu kontrol edebilirsiniz.

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

Android Hata Ayıklama Köprüsü (ADB) komutlarını çalıştırın

Geliştirme ve test amacıyla, Konum Ayarlarını kullanmadan sürücü yardımı geçişinin durumunu hızlı bir şekilde kontrol edebilir veya değiştirebilirsiniz.

  1. Durumu kontrol etmek veya değiştirmek amacıyla ADB komutlarını kullanmak için:
    // 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
    

İzni ayarla

Sürüme özel Android sürümleri için aşağıdakilere bakın:

  1. Android 12'de sürücü yardımı uygulamalarının WRITE_SECURE_SETTINGS iznine sahip olması gerekir.
  2. Android 13 ve üzeri sürümlerde LOCATION_BYPASS izni gereklidir.

Cihazınızdaki izin verilenler listesine bir uygulama ekleyin

etc/sysconfig dizininde:

  1. Uygulamanın paket adını bir sistem yapılandırması XML dosyasına ekleyin:
  2. <!-- In a xml file under etc/sysconfig–>
    <config>
    …
    <allow-adas-location-settings package="PACKAGE-NAME" />
    …
    </config>
    

Paketinizin Konum Ayarları kullanıcı arayüzünde görünmesini sağlamak için paket adınızı config_locationDriverAssistancePackageNames ekleyin.

Uygulamanın gizlilik politikası açıklamasının URL'sini AndroidManifest.xml dosyasına ekleyin. Meta verinin adı privacy_policy olmalıdır.

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

"Sürücü yardımı anahtarı için konumu kullan" seçeneğini kaldırın

Android'den konum isteyen, konuma dayalı bir sürücü yardımı uygulamanız yoksa Konum Ayarları anahtarını kaldırmak için kod bloğunu yorumlayabilirsiniz.

  1. packages/apps/Car/Settings/res/xml/location_settings_fragment.xml açın ve ardından aşağıdaki kodu yorumlayın.
    <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. Anahtarı çıkardıktan sonra config_defaultAdasGnssLocationEnabled değerini false olarak ayarlayın.

Otomotiv test paketini çalıştırın

Google, bir cihazdaki tüm sürücü yardım paketlerinin Google'da izin verilenler listesine alınmasını sağlayan bir Otomotiv test paketi (ATS) testi sağlar. Test uzaktan yapılandırılır. Yeni bir paket eklemek için bir sonraki ATS sürümüne kadar beklemenize gerek yok. Daha fazla bilgiyi Bir Kutuda Tam Otomotiv Testleri bölümünden öğrenebilirsiniz.