OEM tasarım jetonları

OEM tasarım jetonları, Materyal Tasarım bahsedeceğim. Mobil cihazlardaki jeton değerleri için algoritmik veya kullanıcı seçme yaklaşımının aksine, OEM'ler jeton değerlerini tasarlayın. Tasarım jetonları bir ürün testi oluşturan küçük, tekrar eden tasarım kararlarını sistemin görsel stilini tasarlamalı ve statik değerleri açıklayıcı adlarla değiştirmelidir. Jetonlar: Materyal Tasarım sistemi tarafından tanımlananlara benzer.

OEM jeton kitaplığı

OEM tasarım jetonları, aşağıdaki üç koddan oluşan OEM jeton kitaplığı üzerinden referans alınır: bileşenlerine örnektir.

Şekil 1. OEM jeton kitaplığı bileşenleri

Statik kitaplık

OEM jeton kitaplığının statik kitaplık bileşeni, anlatacağım.

  • Jetonlar için OEM değerlerine erişmek üzere API'ler sağlar.
  • OEM değerlerine sahip temadaki jeton referanslarının geçersiz kılınmasını etkinleştirir.

Paylaşılan kitaplık

Paylaşılan kitaplık bileşeni, aşağıdakileri tanımlamaktan sorumludur:

  • Kitaplık adı.
  • OEM jeton değerlerini etkinleştirmek için Boole etkinleştirme.
  • OEM jeton değerlerini sağlayan stil.

OEM tarafından tanımlanan bir paket de dahil olmak üzere bu paylaşılan kitaplık bileşeninin OEM sahipliğini sağlamak için adına göre, OEM'ler paylaşılan kitaplık uygulamasının bir geçersiz kılmasını oluşturabilir.

Şekil 2. Paylaşılan kitaplık uygulamasını geçersiz kılma.

OEM paylaşılan kitaplık

Paylaşılan kitaplık bileşeninin OEM geçersiz kılmaları, kitaplığın OEM sahipliğine izin verirken için bir araç sağlayarak OEM jeton kitaplığındaki diğer bileşenlerle uyumluluğun paket adı ve imzası, paylaşılan orijinal yapılandırmanın uygulanmasından ayrılırken değişiklik yapılmamıştır.

Paylaşılan kitaplık için geçersiz kılmalar aşağıda gösterildiği gibi tanımlanabilir:

override_android_app {
    name: "[OEM]-token-shared-lib",
    base: "token-shared-lib",
    package_name: "com.[OEM].sharedlib",
    rename_resources_package: false,
    certificate: 
}

Jeton değerlerini ayarlamak için OEM jeton değerlerini belirtme başlıklı makaleyi inceleyin.

OEM paylaşılan kitaplık özelleştirmeleri

Jeton değerleri için çeşitli şemaları (ör. model veya sürücü modu farklılaştırma) desteklemek için: OEM'ler, Çalışma Zamanı ile OEM paylaşılan kitaplığını hedefleyerek jetonlar için dinamik değerler sağlayabilir Kaynak Bindirmeleri (RRO'lar). Daha fazla bilgi edinmek için bkz. Çalışma zamanında uygulama kaynaklarının değerini değiştirme.

Jeton değerlerini ayarlamak için OEM jeton değerlerini belirtme başlıklı makaleyi inceleyin.

OEM jeton değerlerini belirtin

Jeton değerlerini belirtmek için OemStyle stilindeki ilgili özelliği şuna ayarlayın: eklemeniz gerekir.

<resources>
    <style name="OemStyle">
        <item name="colorPrimary">#B0C5FF</item>
        <item name="colorOnPrimary">#002B76</item>
        <item name="colorPrimaryContainer">#003FA4</item>
        <item name="colorOnPrimaryContainer">#D9E2FF</item>
        …
    </style>
</resources>

OEM değerlerini etkinleştir

Uygulamaların OEM tarafından sağlanan jeton değerlerine erişebilmesi için OEM'lerin önce varsayılanı geçersiz kılmayı etkinleştirmesi gerekir jeton değerlerini enable_oem_tokens boole değeri true olacak şekilde yapılandırarak.

RRO jetonu değerleri

OemStyle içinde jeton değerlerinin ayarlanmasına benzer şekilde, RRO'lar stilini kullanın.

<resources>
    <style name="OemStyle">
        <item name="com.android.oem.tokens:colorPrimary">#B0C5FF</item>
        <item name="com.android.oem.tokens:colorOnPrimary">#002B76</item>
        <item name="com.android.oem.tokens:colorPrimaryContainer">#003FA4</item>
        <item name="com.android.oem.tokens:colorOnPrimaryContainer">#D9E2FF</item>
        …
    </style>
</resources>

RRO'lar, paylaşılan kitaplığı belirterek stilde paylaşılan kitaplık özelliklerini ayarlamalıdır dokunun.

Son yüklemeyi yapılandır

Jeton paylaşılan kitaplığının OEM uygulamasını içeren sistemler, sistemi yapılandırmalıdır uygulama derslerinden sonra paylaşılan kitaplığı yüklemek için Bunun için kitaplık adını ekleyin config_sharedLibrariesLoadedAfterApp içinde (com.android.oem.tokens) yapılandırdığınızdan emin olun. Google Otomotiv Hizmetleri'ne (GAS) erişiminiz varsa bu, gerekir.

<!-- The OEM token shared library will be loaded after app classes -->
<string-array name="config_sharedLibrariesLoadedAfterApp" translatable="false">
    <item>com.android.oem.tokens</item>
</string-array>

En iyi uygulamalar

OEM jeton kitaplığıyla ilgili en iyi uygulamalar aşağıda açıklanmıştır.

Esnek güncelleme stratejisi etkinleştirme

Güncellemeler konusunda esneklik kazanmak için aşağıdaki stratejilere bakın.

OEM paylaşılan kitaplık

Sistem tarafından paylaşılan kitaplıkların sistem görüntülerine önceden yüklenmesi gerektiğinden cihazlar kitaplığa veya kitaplığa, Havadan (OTA) güncelleme kapsamında eklenmelidir (öğrenmek için daha fazla bilgiyi OTA Güncellemeleri bölümünde bulabilirsiniz.) Ancak, sistem görüntüsü, tam çalışan bir uygulama için güncellemenin aynı zamanda cihazlara aktarılmasına olanak tanır. ve OTA’ya gerek olmadan ileri bir tarihe geçebilirsiniz.

Paylaşılan kitaplık RRO'ları

RRO'ların sistem uygulamaları olarak yüklenmesi şart olmasa da bu, veya istenen bir güncelleme davranışını içerebilir.

  • Kullanıcılar oturum açmadığında uygulamaların otomatik olarak güncellenmesi.
  • Kullanıcı tarafından kaldırılamaz (kullanıcılar yalnızca güncellemeleri kaldırabilir).