Android Automotive OS için park edilmiş uygulamalar derleme

Araç kullanırken kullanım için geliştirilen uygulamaları desteklemenin yanı sıra Android Automotive İşletim sistemi, tarayıcıları, oyunlar ve video uygulamaları geliştirebilirsiniz. Diğer arabalara yaptığınız gibi aynı uygulamayı arabalara da gönderebilirsiniz. büyük ekranlı cihazlara benzer.

Mevcut uygulamanızı Android Automotive OS emülatöründe test edin

Android Automotive OS uygulamanızı derlemeye başlamak için önce mevcut uygulamasıdır. Emülatör kurmak için Android Automotive OS emülatörünü kullanarak test etme bölümündeki adımları inceleyin. Ardından şu adresteki talimatları uygulayarak uygulamayı çalıştırabilirsiniz: Uygulamanızı emülatörde çalıştırın.

Uygulamanızı çalıştırırken aşağıdakilere benzer uyumluluk sorunlarına dikkat edin: takip etmek için:

  • Bilgi-eğlence sistemi ekranlarının yönleri sabittir. YouTube'un araba Uygulama kalitesi yönergelerine uygun bir cihaz kullanıyorsanız, uygulamalar hem dikey hem de yatay görüntüleri desteklemelidir. şekilde ayarlayabilirsiniz.
  • Diğer cihazlarda kullanılabilen API'ler Android Automotive'de kullanılamayabilir İşletim sistemi. Örneğin, bazı Google Play Hizmetleri API'leri Android'de kullanılamaz. Automotive OS. Özellikleri devre dışı bırakma bölümüne bakın ziyaret edin.

Uygulamanızın manifest dosyalarını yapılandırma

Android Automotive OS'i hedeflemek için uygulamanızda belirli manifest girişlerinin olması gerekir. Bunlarla birlikte, Android Automotive OS'i hedefleyen uygulamalar . Web siteleri, arabada kullanım için güvenli olduklarından emin olmak üzere manuel inceleme sürecidir. Daha fazla bilgi için Arabalar için Android uygulamalarını dağıtma konusuna bakın. bolca fırsat sunuyor.

Gerekli Android Automotive OS özellikleri

Android Automotive OS için geliştirilmiş uygulamalar, bir arabada Play Store'da listelenmek üzere şunları içermelidir: <uses-feature> AndroidManifest.xml içindeki dosya:

<manifest ...>
    ...
    <uses-feature
        android:name="android.hardware.type.automotive"
        android:required="true" />
    ...
</manifest>

Otomotiv harici kanallara gönderilen uygulamalar <uses-feature> ile ilgili bir beyanda bulunamaz öğesine bağlı olmadığından önceki kod örneğinde gösterilen özgürce kontrol edin. Bu yüzden, aynı uygulamayı hem otomotiv hem de hem otomotiv hem de otomotiv olmayan cihazlar için uygulamanızın en az iki farklı türünü oluşturmanız gerekir: birincisi otomotiv cihazları, diğeri de mobil cihazlar için. Okuyucu Gelirleri Yöneticisi'ni aşağıdaki dokümanlara bakın:

Uygulamanın iki aroması aynı paket adını paylaşabilir, ancak Play Store kanallarına yüklendikleri için farklı sürüm kodları ayrı olarak düzenleyebilirsiniz.

Alternatif olarak, ayrı aroma yerine farklı aroma çeşitlerini mobil ve otomotiv APK'larınız veya App Bundle'larınız için adlar belirleyin. Şunu anlamak için: her bir yaklaşım için gereken dengeyi Paket adları makalesini inceleyin.

Önceki kod örneğinde gösterilen öğeye ek olarak, Android Automotive OS, aşağıdaki <uses-feature> öğelerini içermelidir: kök <manifest> öğesi:

<uses-feature
  android:name="android.hardware.wifi"
  android:required="false"/>
<uses-feature
  android:name="android.hardware.screen.portrait"
  android:required="false"/>
<uses-feature
  android:name="android.hardware.screen.landscape"
  android:required="false"/>

Bu özelliklerin açıkça "zorunlu değil" olarak ayarlanması, uygulamanızın şununla çakışmaz: Android Automotive OS cihazlarda kullanılabilen donanım özellikleri.

Dikkat dağıtıcı öğeler için optimize edilmiş etkinlikler bulunmadığından emin olun.

Uygulamanızın yalnızca park hâlindeyken kullanılabilmesini sağlamak için bu işlemi yapmayın aşağıdaki <meta-data> öğesini, <activity> öğesi manifesto:

<!-- NOT ALLOWED -->
<meta-data
  android:name="distractionOptimized"
  android:value="true"/>

Bu meta veriler olmadan uygulamanızın etkinlikleri otomatik olarak engellenir aracı sürüş moduna geçtiğinde işletim sistemi tarafından otomatik olarak devreye giren gerekir. Bu işlem onPause yaşam döngüsü geri çağırması sırasında hem video hem de ses oynatmayı duraklatmanız gerekir nasıl sağlayabileceğini de öğreneceksiniz.

Kategoriye özel manifest girişleri

Tüm park edilmiş uygulamalar için geçerli olan önceki şartlara ek olarak Video ve oyun kategorilerinin ek gereksinimleri vardır:

Uygulamanızı Android Automotive OS için optimize edin

Kullanıcılarınıza mümkün olan en iyi deneyimi sunmak için aşağıdaki noktaları koruyun Android Automotive OS için uygulamanızı geliştirirken göz önünde bulundurun.

Büyük ekranlar için optimize etme

Android Automotive OS araçlarda bulunan ekranlar boyut olarak daha benzerdir. ve en boy oranının tabletlere ve katlanabilir cihazlara göre belirleniyor. Dolayısıyla, uygulamanızı büyük ekranlar için optimize etmek arabalarda da kullanıcılarınızın yararına olur.

Özellikle, Farklı desteği sağlama ekranına bakın boyutlar ve Taşı duyarlı düzenlerin kullanıcı arayüzünüze kılavuzlarının yanı sıra geniş ekran boyutlarından en iyi şekilde medya ve oyunlar galeriler bulunuyor.

Giriş gibi diğer büyük ekran optimizasyonları uyumluluk Android Automotive OS için doğrudan faydalı olmasa da kullanıcı deneyimini iyileştirmeye yardımcı olur. Örneğin, klavyeyle gezinme dönen gezinme ile aynı API'ler, Bu nedenle, söz konusu optimizasyonlar her iki form faktörü için de faydalı olabilir.

Pencere içleri ve ekran kesimleriyle çalışın

Diğer form faktörlerinde olduğu gibi Android Automotive OS'te de sistem kullanıcı arayüzü bulunur öğeleri gibi öğeleri kontrol edebilir ve dikdörtgen olmayan görüntüler.

Varsayılan olarak, uygulamalar sistem çubuklarıyla çakışmayan bir alan çizer veya ekran kesimleri vardır. Ancak, uygulamanızın sistem çubuklarını gizlemesini arkalarına içerik çizin veya içeriği açıklandığı gibi ekran kesiminde gösterin Uygulamanızı pencere içleri içine yerleştirin konusunu inceleyin. Eğer uygulamanız bunların herhangi birini yapıyorsa aşağıdaki alt bölümlere bakın Uygulamanızın Android Automotive OS ekosisteminde iyi çalışmasını sağlama cihazlar.

Sistem çubukları, yoğun içerik modu ve uçtan uca oluşturma

Arabalardaki sistem çubuklarının boyutu ve konumu, diğerlerine göre farklı olabilir olabilir. Örneğin, gezinme çubukları sol tarafa, ekranın sağ veya alt tarafına dokunun. Ekranda bir durum çubuğu olsa bile, bir gezinme çubuğu (çoğu telefonda ve telefonda olduğu gibi) bu öğelerin boyutu arabalarda büyük olasılıkla çok daha büyük olacaktır.

Ayrıca, Android Automotive OS, OEM'lerin aşağıdakileri yapıp yapmayacağını kontrol etmesine olanak tanır: Uygulamalar, kapsamlı düzene girmek ve ekrandan çıkmak için sistem çubuklarını gösterebilir veya gizleyebilir mod'u seçin. Örneğin, uygulamaların OEM'ler sistem çubuklarını gizleyerek, havalandırma ve soğutma gibi her zaman ekrandan erişilebilir. Bir OEM, uygulamaların sistem çubukları kontrol ediliyorsa, uygulama WindowInsetsController (veya WindowInsetsControllerCompat) Sistem çubuklarını göstermek veya gizlemek için API'ler. show belgelerine bakın ve hide ile ilgili daha fazla bilgi edinmek için, uygulamanızın ek'ler.

Benzer şekilde, OEM'ler de uygulamaların rengi ayarlayıp ayarlayamayacağını sistem çubuklarının yarı saydamlığını ölçerek çubuk ve öğelerin içerdiği her zaman net bir şekilde görülebiliyor. Uygulamanız uçtan uca, sistem çubuklarının arkasına yalnızca kritik olmayan içeriğin çizildiğinden emin olun. Cihazın OEM'si renk ayarlamayı engellerse bu içerik görünmeyebilir şeffaflığını koruyabilir.

<!-- Depending on OEM configuration, these style declarations
     (and the corresponding runtime calls) may be ignored -->
<style name="...">
  <item name="android:statusBarColor">...</item>
  <item name="android:navigationBarColor">...</item>
  <item name="android:windowTranslucentStatus">...</item>
  <item name="android:windowTranslucentNavigation">...</status>
</style>

Uygulamanız uçtan uca giderse boyutu, sayısı, boyutu ve boyutu hakkında varsayımlarda bulunmayın. sistem çubuklarının türü veya konumu. Bunun yerine, yerleşiminizi düzenlemek için window insets API'leri uygulamanızın içeriğini sistem çubuklarına göre ayarlayabilirsiniz. Görüntüleyin Uygulamanızda içeriği uçtan uca görüntüleme . Sabit kodlanmış dolgu değerleri hiçbir zaman önerilmez, içerik muhtemelen diğer cihazlarda güvenli alanda kalabilir olmaz.

Düzensiz şekilli ekranlara uyum sağlar

Dikdörtgen ekranlara ek olarak bazı araçların şekli düzensiz olabilir : Şekil 1'de gösterilene benzer:

Android Automotive OS cihazın resmi:
      eğimli hale geldi.
Şekil 1: Android Automotive OS cihaz eğimli hale geldi. Yeşil alan, görünmeyen güvenli dikdörtgendir. eğrinin ekran kesiminin sınırlayıcı kutusuyla çakışır.

Uygulamanız uçtan uca oluşturmuyorsa bunun için herhangi bir işlem yapmanız gerekmez güvenli alanda oluşturmak için kullanılır.

Uygulamanız uçtan uca oluşturuluyorsa ve ekran kesimlerine göre davranın. Bunu, kaynaklarınızı kullanarak yapabilirsiniz ayarlayarak android:windowLayoutInDisplayCutoutMode Uygulamanızın teması için veya çalışma zamanında istenen özellik pencerenin layoutInDisplayCutoutMode özelliğini gönderin.

Android Automotive OS cihazlarda bulunan ekran kesimi türleri mobil cihazlardakilerden farklıysa LAYOUT_IN_DISPLAY_CUTOUT_MODE_DEFAULT veya LAYOUT_IN_DISPLAY_CUTOUT_MODE_SHORT_EDGES, Bu reklamlar, mobil cihazlarda bulunan kesmeler için optimize edilmiş davranışa sahiptir. Bunun yerine LAYOUT_IN_DISPLAY_CUTOUT_MODE_NEVER kullanılır veya LAYOUT_IN_DISPLAY_CUTOUT_MODE_ALWAYS kesmek istiyorum. İkinci seçeneği seçerken Daha fazla bilgi için Destek ekran kesimleri başlıklı makaleyi inceleyin. hakkında daha fazla bilgi edinin.

Uygulamanız, ekran kesimi alanında oluşturulursa ve bunu Android Automotive OS ve mobil arasında farklı davranış örnekleri vardır, bkz. Uygulamanız bu ayarı yapıyorsa yardım için özellikleri devre dışı bırakın davranışını daha iyi anlamak ve aşağıdaki durumlarda alternatif kaynaklar kullanmak için uygulaması, bu davranışı kaynak dosyaları kullanarak ayarlar.

Özellikleri devre dışı bırak

Mevcut bir mobil uygulamayı Android Automotive OS'te kullanıma sunuyorsanız bazı özellikler ve işlevler mevcut olmayabilir. Örneğin, Örneğin, arabalar genellikle kameralara erişim sağlamaz. Ayrıca, Google Play hizmetlerinin bir alt kümesi Android Automotive OS'te kullanılabilir. bkz. Daha fazlası için arabalar için Google Play Hizmetleri bolca fırsat sunuyor.

Şunu kullanabilirsiniz: PackageManager.hasSystemFeature Uygulamanın Android Automotive OS'te çalışıp çalışmadığını kontrol etmek için API'yi kullanarak - FEATURE_AUTOMOTIVE özelliği ekleyin:

Kotlin

val packageManager: PackageManager = ... // Get a PackageManager from a Context
val isCar = packageManager.hasSystemFeature(PackageManager.FEATURE_AUTOMOTIVE)
if (isCar) {
  // Enable or disable a given feature
}

Java

PackageManager packageManager = ... // Get a PackageManager from a Context
boolean isCar = packageManager.hasSystemFeature(PackageManager.FEATURE_AUTOMOTIVE)
if (isCar) {
  // Enable or disable a given feature
}

Alternatif olarak, uygulamanızda Android Auto bileşeni de varsa CarConnection API'yi Arabalar için Android uygulama kitaplığı ile uygulamanın Android Automotive OS veya Android Auto'da çalışıyorsa (veya bağlı değilse) arabaya sürebilebilir.

Pencere İçinde Pencere (PIP) için, en iyi uygulamalara ve buna uygun tepkiler verin.

Çevrimdışı senaryoları yönetme

Arabalar giderek daha fazla internete bağlansa da uygulamaların aşağıdaki durumlarda olduğu gibi, internet bağlantısı olmadan çalıştırmayı deneyin:

  • Kullanıcılar, bir abonelik kapsamında sunulan mobil verileri devre dışı bırakabilir paketinden çıktı.
  • Belirli bölgelerde mobil veriye erişim sınırlı olabilir.
  • Kablosuz radyosu olan arabalar kablosuz menzilinin dışında olabilir veya bir OEM Mobil ağın tercih edilmesi için kablosuz bağlantıyı kapatın.

Uygulamanızı sorunsuz bir şekilde düşürerek bu tür durumların üstesinden gelmeye hazır olun. internet erişimine bağlı işlevler (ör. çevrimdışı içerik. Daha fazla bilgi için Google Ads API'sini optimize etmeye ağ oluşturma.

Alternatif kaynaklar kullanma

Uygulamanızın arabalara uygun hale getirilmesine yardımcı olmak için car kaynak niteleyiciyi kullanarak şunları sağlayabilirsiniz: alternatif kaynaklar karar verebilirsiniz. Örneğin, Depolanacak kaynakları boyutlandırma dolgu değerlerini eklemek isterseniz, car kaynağı için daha büyük bir değer kullanarak daha geniş belirir.

Uygulamanızı dağıtma

Uygulamanızı, araba uygulaması kalite yönergelerine göre test ettikten sonra, kategori ve Android Automotive OS derlemesi içeriyor. Ardından, bu etiketi şurada Automotive OS form faktörü kanallarında yayınlayabilirsiniz: Play Store'a gidin. Arabalar için Android uygulamalarını dağıtma başlıklı makaleye bakın. ziyaret edin.

Park edilmiş uygulamalarla ilgili geri bildirimde bulunma

Park edilmiş uygulamanızı geliştirirken bir sorunla karşılaşırsanız veya özellik isteğinde bulunursanız Android Automotive OS için bu uygulamayı kullanarak bildirebilirsiniz. Google Sorun Takip Aracı. Sorun şablonuna istenen tüm bilgileri girdiğinizden emin olun. Şu tarihten önce: yeni bir sorun oluşturduktan sonra, sorunun sorunlar listesinde zaten bildirilip bildirilmediğini kontrol edin. Siz şu sayılarda bir sayı için yıldızı tıklayarak abone olabilir ve sayılara oy verebilir: takip edebilirsiniz. Daha fazla bilgi için bkz. Bir Soruna abone olma

Yeni sayı oluştur