AAOS zaman kaynaklarını yapılandırma

Bu özellik, iş ortaklarının zamanı ister Android üzerinden ister Otomotiv işletim sistemi (AAOS) veya araç sistemlerinden Android'e. Kaliteli uygulamalar sağlamak için AAOS'yi iki yeni VHAL özelliğinden birini kullanacak şekilde yapılandırabilirsiniz aşağıdaki adımları uygulayın. Şunu kullan:

  • Bilgi kaynağı olarak Android'i kullanmak için ANDROID_EPOCH_TIME süre tahminidir. VHAL, zaman değişikliklerini bildiren bu salt yazma özelliğini destekler. Elektronik Kontrol Birimleri gibi diğer araç sistemlerine (ECU) ve Vücut Kontrol Modülü'nü (BCM) kullanmayı unutmayın.
  • Kaynak olarak Android'i kullanmamak için EXTERNAL_CAR_TIME kabul etmesini sağlar. Bu durumda VHAL, salt okunur Diğer araçların zaman değişikliklerini bildiren EXTERNAL_CAR_TIME özelliği sistemlerini (ECU'lar ve BCM) Android'e
ziyaret edin.

AAOS, öncelik belirlemenize yardımcı olmak için yapılandırılabilir bir TimeDetectorStrategy seçeneği de sunar. farklı zaman kaynaklarını karşılaştırmaktır.

Android doğru zamanın kaynağıdır

Zaman kaynağı olarak Android kullanıldığında, OEM'ler diğer araç sistemlerini (ör. ECU'lar ve BCM) Android saatiyle.

Bunu yapmak için VHAL uygulamasının salt yazma özelliğini desteklemesi gerekir ANDROID_EPOCH_TIME mülkü. Android, mülkle ilgili bir güncellemeyi okumak için hem açılış zamanında hem de Android'de zaman kaynağı değiştirildiğinde yeni sistem saati için geçerlidir.

Android doğru zamanın kaynağı değildir

Android zaman kaynağı olarak kullanılmadığında, Android saatini senkronize edebilirsiniz. olması için (örneğin, ECU veya BCM ile) Bu durumda, VHAL uygulaması, EXTERNAL_CAR_TIME salt okunur özelliğini desteklemeli ve yayınlamalıdır zaman kaynağı değiştiğinde veya saati yeniden kavradığında bu özellik güncellenir.

OEM'ler ayrıca şunları sağlamalıdır:

  • config_autoTimeSourcesPriority değerleri, core/res/res/values/config.xml.
  • Şuradaki config_enableExternalCarTimeToExternalTimeSuggestion özelliği: CarServices yer paylaşımlı yapılandırmaları packages/services/Car/service/res/values/config.xml true olarak ayarlandı.
  • external zamanı şurada uygun önceliğe sahip: TimeDetectorStrategy yapılandırması. Daha fazla bilgi edinmek için bkz. GNSS Zaman Algılama. Örnek:
    <!-- Specifies priority of automatic time sources. Suggestions from higher entries in the list take precedence over lower ones.
    See com.android.server.timedetector.TimeDetectorStrategy for available sources. -->
         <string-array name="config_autoTimeSourcesPriority">
            <item>external</item>
            <item>gnss</item>
            <item>network</item>
            <item>telephony</item>
        </string-array>
ziyaret edin.

Android'in dahili uygulama ayrıntıları

Aşağıdaki akış, ANDROID_EPOCH_TIME VHAL özelliği etkinleştirildiğinde gerçekleşir: desteklenir:

  1. TimeHalService (CarServices'de), Android sisteminden şunun için yayın alır: Intent.ACTION_TIME_CHANGED.
  2. TimeHalService, VHAL Mülkü için bir güncelleme yayınlar ANDROID_EPOCH_TIME.
  3. VHAL, alınan zaman değerini çeşitli ECU'lara ve/veya BCM birimlerine yayabilir.

Aşağıdaki akış, EXTERNAL_CAR_TIME VHAL özelliği etkinleştirildiğinde gerçekleşir: desteklenir:

  1. VHAL, EXTERNAL_CAR_TIME özelliğini günceller.
  2. TimeHalService (CarServices'da), mülkü bir abonelik aracılığıyla okur.
  3. TimeHalService, ExternalTimeSuggestion oluşturup gönderen: TimeManager.
  4. TimeManager, öneriyi TimeDetectorService adresine yönlendirir.
  5. TimeDetectorService, yeni bir seçim yapmak için TimeDetectorStrategy kullanıyor sistem saati.