HMI'ye genel bakış

Android Automotive, Android cihazlarda sunulan bir araç içi bilgi-eğlence platformu çözümüdür Açık Kaynak Projesi (AOSP). Bu konudaki makalelerde temel kavramlar ve bileşenler Android Automotive System kullanıcı arayüzü ve etkili bir insan gücü sistemi geliştirmek için gereken temel uygulamalar tarafından sağlanır. OEM'ler, üçüncü taraf geliştiriciler ve son kullanıcılar için Makine Arayüzü (HMI) sistemi.

  • AOSP Ana Makine Entegrasyon Kılavuzu. App Host, 3. taraf araç uygulamalarının kendi anlamına gelir.
  • Araba Ayarları Yapısı. Araba Ayarları, araba odaklı bir görsel kullanıcı arayüzü sağlar ve sürücünün dikkatini dağıtabilir. ve OEM'ler için ek özelleştirme giriş noktalarından bahsedeceğiz.
  • Araba kullanıcı arayüzü kitaplığı entegrasyon kılavuzu. Araba Kullanıcı Arayüzü Kitaplığı, tutarlılık ve özelleştirme sağlar.
  • Durum Çubuğu Sistem Simgelerini Özelleştirme. Durum çubuğu, Android Sistem Kullanıcı Arayüzünün bir bileşenidir ve her zaman önemli bilgiler sağlar. Durum çubuğu sistem simgelerini nasıl özelleştireceğinizi öğrenin.
  • Uyarı Bildirimleri. Uyarı Bildirimleri'ni nasıl özelleştireceğinizi öğrenin.
  • Çevirici. Bluetooth için dikkat dağıtıcı unsurlar açısından optimize edilmiş bir deneyim uygulamak için bu Android sistem uygulamasını kullanın kişilere göz atma ve çağrı yönetimi gibi özellikleri kullanabilirsiniz.
  • Medya. Yalnızca birkaç ayarla bir hizmet ile, geliştiriciler mevcut medya uygulamalarının kapsamını genişletebilirler. Uygulamalar şunlara uymak zorundadır: Automotive Media şablonu sayesinde, geliştiriciler şablon renklerini, yazı tiplerini, simgeleri ve daha fazlasını özelleştirerek markalı bir deneyim oluşturabilirsiniz.
  • Bildirimler. Bildirimlerin görünümünü ve yapılandırmalarını nasıl değiştireceğinizi öğrenin.

Terminoloji

Bu terimler, HMI ve ilgili makalelerde kullanılmaktadır:

Terim Tanım
Temel uygulamalar Ayarlar, Radyo, HVAC, Medya, Çevirici ve Klavye.
Uyumluluk Tanımlama Belgesi (CDD) Cihazların en yeni sürümlerle uyumlu olması için karşılanması gereken şartları belirtir. sürümünü kullanabilirsiniz.
Uyumluluk Test Paketi (CTS) Şu adresten indirebileceğiniz ücretsiz, ticari düzeyde test paketi Uyumluluk Test Paketi İndirmeleri.
Özelleştirme AOSP uygulamasını, OEM'nin şartlarını karşılayacak şekilde değiştirme uygulaması. Bu yöntemde genellikle kozmetik değişiklikleri uygulamak için kaynak yer paylaşımlarının kullanılması ve aynı zamanda CDD, CTS ve ilgili tüm Kullanıcı Deneyimi yönergelerine uyulduğundan emin olun.
Hero uygulamalar Android'in tüm özellikleri için kritik öneme sahip olan bir dizi temel uygulama geçiş yapılabilirlik, üçüncü taraf geliştirici ekosistemi ve son kullanıcılar. Çarpıcı uygulamalar şunları içerir: Bildirimler, Ayarlar, Medya ve İletişim Merkezi/Çevirici. İlgili AOSP uygulamaları üretim kalitesinde olmalıdır.
Kaynak yer paylaşımları Kullanıcı arayüzünün oluşturulmasını etkilemek için, renkleri değiştirmek üzere bu mekanizmayı kullanın, şuradan boyutları değiştirebilir, çizimi etkinleştirebilir ve düzen kaynaklarını uygulayabilirsiniz: derleme süresi (en yaygın) veya çalışma zamanında (Çalışma Zamanı Kaynak Bindirmeleri (RRO)).
Sistem Arayüzü Sisteme ait bir uygulamanın dışındaki kullanıcı arayüzü (ör. gezinme çubuğu, durum çubuğu, kilit ekranı ve ses düzeyi iletişim kutusu.
Tema Bileşenlerin görünüm ve tarzını belirlemek için kullanılan renk ve stiller koleksiyonu ve temayı devralan uygulamalar.
Kullanıcı Deneyimi Kullanıcı Arayüzü tasarımı ve kullanılabilirliği alanı.

Özelleştirme

Sistem arayüzünün ve diğer temel sistem uygulamalarının AOSP uygulaması, HMI geliştirme sürecine başlamak için bir temel. AOSP'nin değiştirilmesi (öncelikli kaynak yer paylaşımlarının kullanılması yoluyla) istikrarlı bir şekilde uygulama (OEM'nin marka, işletme, Yasal şartlar özelleştirme olarak adlandırılır.

Genel sistem esnek olacak şekilde tasarlanmış ve üretilmiş olsa da farklı bileşenler beklenmektedir özelleştirilebilir:

  • Sistem kullanıcı arayüzü. OEM, AOSP uygulamasını ve geçerli kullanıcı deneyimi yönergelerinin şartlarını yerine getirmesine yardımcı olur.

  • Çarpıcı olmayan sistem uygulamaları (referans olarak da bilinir). OEM'ler özelleştirebilir AOSP uygulamasını değiştirebilir veya AOSP uygulamasını değiştirebilirsiniz.

  • Hero uygulamalar. Her uygulama, bir dizi ayrıntılı özelleştirme yönergesi içerir. OEM'lerin AOSP uygulamasını kullanması ve daha sonra izin verdiğinden emin olun.

Yoğunluk yapılandırması

Fiziksel görüntüleme yapılandırmasına göre kullanıcı arayüzü öğelerinin doğru bir şekilde oluşturulduğundan emin olmak için yoğunluk, özellik, pakete ayarlanmalıdır (Görüntülü Reklam Ağı Metrikleri) şu girişe benzer şekilde, fiziksel yoğunlukla en iyi eşleşen:

PRODUCT_PROPERTY_OVERRIDES := \
        ro.sf.lcd_density=160

Kullanıcı deneyimi kısıtlamaları motoru

CarUxRestrictionsManager uygulamaların değişiklikleri dinlemesi için kullanılır kullanıcı deneyimini uygun şekilde değiştirmek için sürüş durumuyla ilgili OEM'ler packages/services/Car/service/res/xml/car_ux_restrictions_map.xml konumundaki yapılandırma dosyası etkilemesine yardımcı olur.

Sistem teması

Renkler ve metin stilleri gibi sistem genelindeki varsayılan öğe grubunu tanımlayan tema DeviceDefault. OEM'lerin, ürün ayarlarını değiştirerek genel özelleştirme sürecini başlatması önerilir. DeviceDefault temasını kullanalım. Sistem kullanıcı arayüzü ve AOSP'deki tüm sistem uygulamaları, varsayılan olarak bu temadan bahsedeceğim. OEM tarafından geliştirilmiş sistem uygulamalarının da DeviceDefault'u devralması da önerilir. Üçüncü taraf geliştirilmiş uygulamaların DeviceDefault'u devralması değil, bunun yerine Theme.Car özelliğini kullanması beklenmiyor androidx.car kitaplığında mevcut. Dosyalar şu şekilde bulunur:

  • Çekirdek. /frameworks/base/core/res/res/values/themes_device_defaults.xml
  • Renkler. /frameworks/base/core/res/res/values/colors_car.xml
  • Stiller. /frameworks/base/core/res/res/values/styles_car.xml
  • Araba yer paylaşımı.
    /packages/services/Car/car_product/overlay/.../values/themes_device_defaults.xml

OEM'lerin, car_product dizinine paralel bir yer paylaşımı yapısına sahip olması beklenir. car_product yer paylaşımını daha da genişleten tedarikçi firma dizininde yer alıyor.

Theme Playground uygulaması

Bu uygulama, aşağıdaki adımları uygulayarak DeviceDefault temasını özelleştirme işlemini kolaylaştırır: tüm tema özelliklerini tek bir yerde görselleştirmek. Ayrıca, belirli stillerin bu örnek için kullanan geliştiriciler, tema sorunlarını hızla ayıklayabilir. Bu uygulama adresinde bulabilirsiniz:

  /packages/services/Car/tests/ThemePlayground

Sistem Arayüzü

Sistem kullanıcı arayüzü, /frameworks/base altındaki tüm kullanıcı arayüzünü (öncelikle şurada) içerir: /frameworks/base/packages/CarSystemUI. Bu menü, Gezinme çubuğu, Durum çubuğu, kilit ekranı, ses seviyesi iletişim kutusu, kısa iletiler, kullanıcı seçici ve izin iletişim kutuları. OEM'ler kaynak yer paylaşımları ve temalar aracılığıyla kapsamlı şekilde sistem kullanıcı arayüzü bileşenleri CDD, CTS ve diğer geçerli kullanıcı deneyimi yönergelerinin şartlarına uymak zorundadır.

Sistem uygulamaları

Android Automotive, genel sistem açısından kritik öneme sahip bir dizi temel sistem uygulaması içerir işlevi görür. Bunlardan İletişim Merkezi, Medya, Bildirimler ve Ayarlar hero uygulamalar olarak değerlendirilir.

  • İletişim Merkezi
  • Isıtma, Havalandırma ve Soğutma
  • IME (klavye)
  • Başlatıcı (ana ekran)
  • Yerel Medya Oynatıcı
  • Medya
  • Messenger
  • Bildirimler
  • Radyo
  • Ayarlar

Ana ekran

Araç Başlatıcı olarak bilinen ana ekran, HMI deneyiminin açılış sayfasıdır. AOSP uygulaması yalnızca referans amaçlıdır ve OEM'lerin ve çoğu zaman navigasyon, medya oynatma, iletişim ve sistem durumuna göre ayarlayın. Araba Başlatıcı uygulamasında genellikle mevcut uygulamalar gösterilir. kontrol edebilirsiniz. Son işlemler, paket değişiklikleri ve gözetimsiz gibi etkinlikleri nasıl yöneteceğinizi öğrenmek için (başlatıcı etkinliği yok) uygulamaları için referans uygulamasına bakın.

Bildirimler

Bildirimler, Android OS'nin dahili bir bileşenidir ve aynı yapıların ( uyarı bildirimi, bildirim listesi/ortayı, Bildirim API'leri, sıralama ve satır içi işlemler) Android Automotive'e dahil edilmiştir. Ayrıntılı bilgi için avuç içi Bildirimler Genel Bakış. Otomotiv kullanım alanlarını optimize etmek için aşağıdaki değişiklikler yapıldı ( avuç içi bildirim yığını):

  • Kullanıcılara gösterilen genel bildirim içeriğinin azalması. Kaldırılması sürekli medya oynatma, devam eden gezinme ve "önemli değil" (LOW ve altının önemi) bildirim listesinden/merkezden sistem uygulamalarının ön plan hizmet bildirimleri veya bu bildirimlerin gereksiz hale getirildiğini anlama (ör. medya durumunu gösteren bir küme) işe yaramaz.

  • Karmaşık bağlamsal denetimlerin (ör. uzun basma ve kaydırma uzunluğuna dayalı) kaldırılması kontrollerinde bulunur).

  • Kullanıcı Deneyimi Kısıtlamaları motor yapılandırmasına uyma.

    • Mesajlaşma bildirimi içerik önizlemesi, Drive durumuna bağlı olarak gizlenebilir.
    • Tüm dizeler maksimum uzunlukla sınırlandırılır.
  • Şu arabalar için özel olarak yeni bildirim kategorileri eklendi: Android 9, yalnızca android.uid.system

  • CATEGORY_CAR_EMERGENCY Bildirim listesinin en üstünde yer alır. Atlamalar Rahatsız Etmeyin (DND) denetimleri.

  • CATEGORY_CAR_WARNING Acil durumun altında ve diğerlerinin üzerinde sıralanır (DND'yi atlar).
  • CATEGORY_CAR_INFORMATION Geri kalan bildirimler dikkate alınarak "önem" yenilik gibidir.

Bildirim yığınının, Bildirim API'lerinden kullanıcı arayüzüne kadar uçtan uca uygulanması, hero uygulama olarak kabul edilir. Tüm HU'larda tutarlı API birlikte çalışabilirliğini garanti etmek ve artırmak için, OEM'lerin AOSP uygulamasını benimsemesi kesinlikle teşvik edilir. özelleştirmenize de olanak verir.

Özelleştirme

Standart DeviceDefault teması ve kaynak yer paylaşımları geçerlidir. Çok sınırlı sayıda davranış özelleştirme düğmeleri şu adreste bulunmaktadır:

packages/apps/Car/Notification/res/values/config.xml

Ayarlar

Ayarlar uygulaması (Araba Ayarları) Düğmeleri açığa çıkaran hero uygulamalardan biridir. Kullanıcının Android OS'in ve arabanın geri kalanının özelliklerini yapılandırmak için kullanabileceği bir ekran görüntüsü. Ayarlar uygulaması, işletim sisteminde 200'den fazla özelliği kullanıma sunuyor. Bunlar, her birinin Android sürümü. Yükseltilebilirliği sağlamak ve parçalanmayı önlemek için OEM'lerin kesinlikle tavsiye edilir. (uygulamayı çatallamak yerine) AOSP uygulamasını alıp özelleştirmek

Özelleştirme

Ayarlar uygulaması, özelleştirmeyi hesaba katar ve birçok seçenek var.

  • Tema. Her Tercih nesne türünün görsel olarak özelleştirilmesini etkinleştirir. aşağıdakiler dahil olmak üzere oluşturulacaktır:

    • Preference.DeviceDefault.CheckBoxPreference

    • Preference.DeviceDefault.DialogPreference.EditTextPreference

  • Hiyerarşi özelleştirme. Etkinleştirmek için:

    • Rastgele bir kök parçasına başlayın, başlıklı dosyadaki config_settings_hierarchy_root_fragment Settings/res/values/config.xml

    • Sıralama, gruplandırma, metin ve simgeler, yer paylaşımı gibi öğelerin özelleştirilmesi Settings/res/xml/*.xml.

  • Statik yerleştirme. OEM'ler bir bindirme projesi oluştururken bunlara ek Parça ve Denetleyici sınıflarını tanımlayıp ekleyerek özel ekranları eklemeniz gerekir.

  • Dinamik yerleştirme. Ayrı bir uygulama (apk) bir Ayarlar ekranında, ana Ayarlar uygulamasından bağlanılması gerekir. Ayrı bir uygulama otomatik olarak eklenir. Daha fazla bilgi için bkz. Dinamik tercihler.

Medya

Media, medya adına kullanıcı arabirimi kullanıcı deneyimi sağlayan bir hero uygulamadır MediaSession ve MediaBrowser API'ler. Medya uygulamaları, üçüncü taraf uygulamaları (ör. Spotify ve Pandora) olabileceği gibi Bluetooth (BT) akışı ve yerel medya gibi medya kaynakları

Android Auto'da (Projeksiyon) yüzlerce medya uygulaması vardır. Bunların tümü bu medya API'lerini Otomatik Olarak Ses Oynatma Özelliğini Sağlama. Medya API'leri, her büyük Android sürümü ve Androidx kitaplığını tıklayın. Tüm medya uygulamalarında ve Android'in gelecekteki sürümlerinde API birlikte çalışabilirliğini garanti etmek için OEM'ler AOSP uygulamasını alıp özelleştirmeniz önemle tavsiye edilir.

Özelleştirme

DeviceDefault temasıyla kullanılan standart tema oluşturma işlemi Medya için de geçerlidir. Ek olarak, kaynak yer paylaşımlarıyla, görünüm ve izlenimin özelleştirilmesi mümkün kullanıcı deneyimi yönergeleriyle uyumlu olmadığından emin olun.

USB medya ve medya kaynakları

Mümkün olduğunca, bu medya kaynaklarının Medya'ya bağlanması önemle tavsiye edilir MediaSession uygulanır. ve MediaBrowser API'ler (bu, tüm üçüncü taraf medya uygulamaları için geçerlidir). AOSP'deki LocalMediaPlayer uygulamasına bakın. Bu uygulama, yerel medya dosyalarını ortaya çıkarır ve Medya'da kaynak olarak gösterilir.