Telefon, Medya, Araba Kullanıcı Arayüzü Kitaplığı ve SMS içeren uygulamalar paketten çıkarılmış uygulamalar olarak kabul edilir (yani Android platformundan paketten çıkarılmıştır). Bu tür uygulamalar, telefondaki tamamlayıcı uygulamadan veri alma mantığını ve ilişkilendirme ile özellik kaydı ayarları da dahil olmak üzere araba tarafındaki kullanıcı deneyimini içerir. Paketlenmemiş koddan oluşturulan APK'lar, platformun çeşitli sürümleriyle çalışır.
Kodu kontrol edin
Paketten çıkarılan kodu kontrol etmek için aşağıdakileri çalıştırın:
repo init -u https://android.googlesource.com/platform/manifest -b ub-automotive-master
repo sync -cq -j4
AOSP kaynak koduyla çalışma hakkında daha fazla bilgi edinmek için Repo istemcisini başlatma başlıklı makaleyi inceleyin.
Kodu derleyin
Kodu Android Studio'yu kullanarak veya komut satırından derleyebilirsiniz.
Android Studio
Android Studio'da kodu derlemek için:
Android Studio'da aşağıdaki derleme dosyasını içe aktarın:
packages/apps/Car/libs/aaos-apps-gradle-project/build.gradle
Gradle JDK'nin 11 veya sonraki bir sürüme ayarlandığından emin olun:
Şekil 1. Android Studio'da Gradle JDK'yi 11 sürümüne ayarlayın.
Komut satırı
Kodu komut satırından derlemek için:
Android SDK'sının konumunu aşağıdaki yöntemlerden birini kullanarak ayarlayın:
packages/apps/Car/libs/aaos-apps-gradle-project/local.properties
oluşturun ve ardından içerdiğisdk.dir
mülkünü ayarlayın. Android Studio, bir projeyi açarken bunu otomatik olarak yapabilir. Örneğin,sdk.dir=/Users/MY-USERNAME/Library/Android/sdk
değerini kullanın.veya
ANDROID_SDK_ROOT
ortam değişkenini Android SDK'sının yolu olarak ayarlayın.
Bir komut istemi veya kabuk penceresi açın.
Şuraya git:
packages/apps/Car/libs/aaos-apps-gradle-project
.Aşağıdaki komutu çalıştırın:
./gradlew assemble
Gerekli minimum API düzeyleri
Paketten ayrılmış her uygulama, minSdkVersion
sürümüne eşit veya bu sürümden daha yeni bir Android sürümünde çalışır. Aşağıdaki tabloda, her uygulamanın desteklediği minimum API sürümü listelenmiştir:
Uygulama | Minimum API düzeyi |
---|---|
Takvim | 29 |
Araba kullanıcı arayüzü kitaplığı | 29 |
CompanionDevice | 29 |
Dialer | 31 |
Medya | 30 |
Messenger (SMS) | 30 |
AOSP Barındırıcısı | 29 |
Önceden derlenmiş bir sistemi bir sistem görüntüsüne entegre etme
Android platform sürümü uygulama tarafından destekliyorsa (önceki bölümdeki tabloya bakın) APK'yı sistem görüntüsüne ekleyebilirsiniz. Ancak entegrasyon adımları Android platform sürümleri arasında farklılık gösterir.
Android 13 ve sonraki sürümler
Android 13 ve sonraki sürümler, paketlenmemiş uygulamaların kaynak kodunu içermez ancak CDD uygunluk testi veya ayrıcalıklı uygulamalara erişim sağlama gibi kullanım alanları için platform derlemesine önceden derlenmiş bir APK ekleyebilirsiniz. APK'yı belirtmek için aşağıdaki örnekte gösterildiği gibi android_app_import
Soong kuralını kullanın:
android_app_import {
name: "CarMediaApp",
apk: "CarMediaApp.apk",
privileged: true,
certificate: "platform", // Media must be signed by the platform
required: ["allowed_privapp_com.android.car.media"],
}
Android 12 ve önceki sürümler
Android 12 ve önceki sürümler, paketlenmemiş uygulamaların kaynak kodunu içerir ancak yine de dahil edilecek önceden derlenmiş bir APK belirtebilirsiniz. Soong'un varsayılan olarak önceliği önceden derlenmiş kod yerine kaynak koda verdiğinden, aşağıdaki örnekte gösterildiği gibi prefer
işaretini android_app_import
kuralı içinde true
olarak ayarlamak gerekir:
android_app_import {
name: "CarDialerApp",
apk: "CarDialerApp.apk",
privileged: true,
presigned: true, // Dialer can have its own signature
required: ["allowed_privapp_com.android.car.dialer"],
overrides: ["Dialer"],
prefer: true, // The prebuilt replaces a source target with the same name
}
Paketten çıkarılmış uygulama ayrıntıları
Uygulama/Dağıtım | Ayrıcalıklı, paketten ayrı sistem imzalanmamış |
Ayrıcalıklı, paketlenmemiş sistem dışı, imzalı |
Paketten çıkarılan sistem bölümünde olması gerekmez |
---|---|---|---|
Uygulama: Takvim | X | ||
Uygulama - CompanionDeviceSupport | X | ||
Uygulama - Arama Aracı | X | ||
Uygulama - AOSP Barındırıcı | X | ||
Uygulama - Medya | X | ||
Uygulama: Mesajlaşma (SMS) | X | ||
Dağıtımı güncelleme | OTA | OTA veya Google Play | OTA veya Google Play |