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:
- Video uygulamaları için Uygulamanızı video uygulaması olarak işaretleme bölümüne bakın.
- Oyunlar için Uygulamanızı oyun olarak işaretleme bölümüne bakın.
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.](https://developer.android.google.cn/static/images/training/cars/aaos-curved.png?authuser=19&hl=tr)
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