Medyayı Özelleştirme

Medya, bir sistem uygulamaları grubuna aittir (örneğin, Çevirici ve Uygulama Başlatıcı). Bu uygulamalar, AOSP yapısında farklı seviyelerde tanımlanan ortak stilleri ve varlıkları paylaşır.

  • framework/base . Tüm Android temel stilleri burada tanımlanır.
  • packages/services/Car/car_product/overlay . Android Automotive OS'nin AOSP görünümünü ve hissini oluşturmak için standart çerçeve/temel kaynakları değiştiren derleme zamanı katmanlarını içerir. OEM'ler bu kaplamayı hariç tutmayı ve kendilerininkileri kullanmayı tercih edebilir.
  • packages/apps/Car/libs/car-ui-lib . Bu kitaplık, sistem uygulamaları için ortak olan AAOS bileşenlerini ve kaynakları ve özelleştirme için tasarlanmış ayrıştırılmış uygulamalar tanımlar. Ayrıntılar için, Araç Kullanıcı Arayüzü Kitaplığı Entegrasyon Kılavuzu'na bakın.
  • packages/apps/Car/libs/car_app_common . Otomotiv sistem uygulamaları arasında paylaşılan ortak renkler ve stiller. OEM'ler bu öğeleri özelleştirmek için bindirmeleri kullanabilir (yukarıda açıklanan car_product/overlay benzer).
  • packages/apps/Car/libs/car_media_common . Medya ve diğer medya kullanıcı arayüzleri arasında paylaşılan öğeleri içerir. Örneğin, Ana ekran Medya widget'ı.
  • packages/apps/Car/Media. Tüm sistem uygulamaları, car-ui-lib içinde tanımlandığı gibi Theme.CarUi uzanan kendi temalarını kullanır.

Android Automotive AOSP, iki medya sunumu sağlar.

  • Medya kullanıcı arayüzü. Kullanıcıların oturum açmasına, içeriğe göz atmasına ve ayrıntılı oynatma kontrollerini kullanmasına olanak tanır.
  • Ana ekran medya widget'ı. Ana ekranda çekirdek medya oynatma kontrol özelliklerinin kullanılmasını sağlar.

Medya kullanıcı arayüzü

Bu şekil, Medya Kullanıcı Arayüzü'nün yapısını açıklar:

Medya Kullanıcı Arayüzü

Şekil 1. Medya kullanıcı arayüzü

UX ve UI yönergelerinin yanı sıra Medya'nın farklı bileşenlerinin uzamsal yapısı hakkında ayrıntılar için, bkz. Uzamsal model .

AppBarView: Araç Çubuğu

Media UI araç çubuğu, Dialer ve Radio gibi diğer sistem uygulamalarıyla paylaşılan bir bileşendir. Araç çubuğunun nasıl özelleştirileceğini öğrenmek için Araç Kullanıcı Arayüzü Kitaplığı Entegrasyon Kılavuzu'na bakın.

Medya maksimum resim boyutu

Alınacak resmin maksimum boyutunu medya uygulamalarına bildirmek için sisteminizde media_items_bitmap_max_size_px yer paylaşımını yapabilirsiniz. Bunu yapmak için kök ipucu olarak EXTRA_MEDIA_ART_SIZE_HINT_PIXELS gönderin. Sonuç olarak, görüntüleri indirirken bant genişliğinden tasarruf edeceksiniz. Daha fazla bilgi edinmek için geliştirici.android.com'da MediaConstants'a bakın.

Fragmana göz atın

Gözat öncelikle kaydırma çubuğu konumunu, okları ve kenar boşluklarını işleyen ve başlıklar, ızgara öğeleri, simge ızgara öğeleri, liste öğeleri ve simge listesi öğeleri gibi farklı türdeki öğelere göz atabilen bir Car UI RecyclerView'dan oluşur.

Minimize edilmiş oynatma kontrolleri

Göz atma parçası görüntülenirken ve bir medya öğesi seçildiğinde, simge durumuna küçültülmüş bir oynatma kontrolleri görünümü görüntülenir. Aşağıdaki şekil bu görünümün yapısını göstermektedir:

Minimize edilmiş oynatma kontrolleri

Şekil 2. Küçültülmüş oynatma kontrolleri

Listeye gözat

Geliştiriciler, medya tarama içeriğinin sunumunu özelleştirmek için bir dizi stil ipucu kullanabilir (bkz. İçerik Stillerini Uygula ). OEM'ler, sunumlarını tasarım sistemlerine göre ayarlayarak bu tarzlara bağlı kalmalıdır.

Desteklenen öğe türleri ve ilgili düzenler aşağıdaki gibidir:

oynatma ekranı

Bu ekranı görüntülemek için simge durumuna küçültülmüş oynatma kontrollerini genişletin:

  • Şu anda medya öğesi medyası oynatılıyor (başlık ve alt başlık dahil).
  • Oynatma kontrollerini tamamlayın.
  • Oynatma sırası (son oynatılan veya oynatılacak sonraki öğeleri görüntülemek için kullanılır).

Oynatma ekranının bileşenleri aşağıdaki şekillerde tanımlanmıştır.

oynatma ekranı

Şekil 3. Oynatma ekranı

Oynatma ekranı, araç çubuğunu uygulamanın geri kalanıyla paylaşmaz. Bunun yerine, ekranın üst kısmındaki öğeler bu ekran tarafından ayrı ayrı yönetilir.

Oynatma kontrolleri

Oynatma ekranı, kontrol satırlarında düzenlenen genişletilmiş bir oynatma kontrolleri seti içerir. İkincil satır (aşağıda üstteki satır olarak gösterilmektedir) yalnızca ilk satırdaki boşluk, medya uygulaması tarafından PlaybackStateCompat#getActions() döndürülen tüm eylemleri görüntülemek için yeterli değilse görüntülenir.

Oynatma kontrolleri

Şekil 4. Oynatma kontrolleri.

OEM'ler standart eylemlerin simgelerini özelleştirebilir, ancak medya uygulamaları tarafından sağlandığı gibi özel eylem simgelerini sunmaları gerekir.

Ana ekran medya widget'ı

Bu widget, car-media-common bir parça olarak uygulanır. Bu parça, yukarıda açıklanan Oynatma Ekranının simge durumuna küçültülmüş bir sürümünü içerir. Tüm aynı özelleştirme kuralları ve yetenekleri geçerlidir.

Ana ekran medya widget'ı

Şekil 5. Ana ekran medya widget'ı

Yukarıda görüntülenen Uygulama Seçici düğmesi, Medya Kaynağı Değiştirme Kullanıcı Akışı bölümünde açıklanan değiştirme işlevini kullanır.

Uygulama Seçici düğmesi için geçerli Medya Kaynağı simgesini kullanmak için platform/packages/apps/Car/libs/car-media-common/res/values/bools.xml içinde tanımlanan use_media_source_logo_for_app_selector bayrağını kaplayın ve true olarak ayarlayın. Bu değişiklikle, uygulama araç çubuğunun karşı tarafındaki Medya Kaynağı simgesi gizlenecektir. Özelleştirme, Media Center uygulaması ve referans Radyo uygulaması için de geçerlidir.

Medya Uygulaması Seçimi düğmesi

Şekil 6. Medya Uygulaması Seçimi düğmesi

Oynat, Duraklat ve Durdur düğme düzeni

Oynat/Duraklat/Durdur düğmesi düzeni, "Şimdi yürütülüyor" ve simge durumuna küçültülmüş oynatma kontrolleri görünümü için özelleştirilebilir. Her iki düzen de packages/apps/Car/libs/car-media-common/res/layout/ içinde tanımlanmıştır.

Düğme düzenlerini özelleştirmek için play_pause_stop_button_layout.xml ve minimized_play_pause_stop_button_layout.xml öğelerine derleme zamanı bindirmeleri uygulayın.

Oynatma sırasındaki mevcut öğeyi vurgulayın

Geçerli oynatma kuyruğu öğesinin durumu, selected olarak ayarlanır, böylece renk durumu listeleri (bkz. Renk durumu listesi kaynağı ) ve durum listesi çizilebilirleri (bkz. Çizilebilir kaynaklar ) gibi durum kaynakları kullanılarak özelleştirilebilir. Gerekli stil değişikliklerini uygulamak için kuyruk öğesi düzenini geçersiz kılabilirsiniz ( package/apps/Car/Media/res/layout/queue_list_item.xml ).

Geçerli oynatma sırası öğesinin yanında bir simge de gösterebilirsiniz:

  • package /apps/Car/Media/res/values/bools.xml içinde tanımlanan show_icon_for_now_playing_queue_list_item Boole bayrağını true ile kaplayın.

    Oynatma zamanlayıcısını gizlemek için show_time_for_now_playing_queue_list_item false olarak ayarlayın.

  • Örneğin, öğe kök görünümünün ön planı veya arka planı gibi çizilebilir bir durum kullanın (bkz. package/apps/Car/Media/res/layout/queue_list_item.xml ) veya öğenin görünüm hiyerarşisinde ayrı bir görünüm.

Şekil 7. Oynatma kuyruğunda vurgulanan geçerli öğe