Geliştirme platformu olarak Android Sanal Cihazı

Android sanal cihazları (AVD) kullanmak için: Android Emülatör Grafik Kullanıcı Arayüzü (GUI) ve Komut Satırı Arayüzünü (KSA) destekler. Bu durumda, ideal iş akışını öğrenmenize yardımcı olur.

Önceden oluşturulmuş verileri kullanarak AOSP Araç AVD'sini kullanıma sunun

Önceden oluşturulmuş AOSP Araç AVD'yi kullanarak hızlıca başlatıp test etmek için açık kaynak komut dosyası kullanarak bir emülatör derlemesini başlatmak için ci.android.com. Komut dosyası şu testlerde test edildi: macOS ve Linux'u seçin.

Bu komut dosyasını kullanmak için Curl'ye ihtiyacınız vardır.

Komut dosyasını çalıştırmak için:

  1. Kopyala launch_emu.sh komut dosyası içeriklerini yerel dosyanıza yükleyebilirsiniz (launch_emu.sh öğesini yerel dosya adı.
  2. Yerel komut dosyanızı yürütülebilir hale getirin. Örneğin, chmod +x ./launch_emu.sh komutunu çalıştırın.
  3. Komut dosyasını ./launch_emu.sh -h ile çalıştırarak mevcut seçenekleri kontrol edin.
  4. ci.android.com sayfasında aosp-main-throttled dalını tıklayın ve içinde sdk_car_x86_64 yeşil. Örneğin, 11370359. Derlemeyi görmüyorsanız Google Hesabınızdan çıkış yapın ve tekrar deneyin.
  5. Derleme kimliğine sahip emülatörle ilgili ikili dosyaları indirip yükleyin. Örneğin, ./launch_emu.sh -i -a 11370359
  6. Bunun ardından, indirilen ve yüklenen uygulamaları başlatmak için ./launch_emu.sh uygulamasını kullanabilirsiniz. emülatörü (-i veya -a seçeneklerini kullanmayın).
  7. Başka bir derleme kimliği indirip yüklemek için ./launch_emu.sh -c komutunu çalıştırarak Workspace'e giderek yukarıdaki 4. ve 5. Adım'ı tekrarlayın.

Android emülatörünü belirtmek için Komut satırı başlatma seçenekleri seçenekleri için -v seçeneğini kullanın. Örnek:

  ./launch_emu.sh -v “-cores 4 -memory 6144 -no-snapshot"
.

AOSP Araç AVD'si oluşturma

AOSP Araç AVD'si oluşturma süreci Telefon için ortalama görüntüleme süresi (AVD) görüntüleri oluşturma (örneğin, aosp_car_x86_64):

  1. Geliştirme ortamını kurmak ve bir dal tanımlamak için şuraya bakın: Source Control Tools (Kaynak Kontrol Araçları). Ardından gözden geçirin Kaynağı İndirme:
    ANDROID_BRANCH="android12L-release"
    REPO_URL="https://android.googlesource.com/platform/manifest"
    mkdir $ANDROID_BRANCH && cd $ANDROID_BRANCH && repo init -u $REPO_URL -b $ANDROID_BRANCH --partial-clone && repo sync -c -j8
  2. AVD görüntüsünü oluşturun:
    . build/envsetup.sh && lunch sdk_car_x86_64-userdebug && m -j32
    .
  3. AVD görüntüsünü çalıştırın (ek Komut satırı başlatma seçenekleri ekleyin) (gerektiği şekilde):
    emulator &

    Örnek:

    Şekil 1. Android Sanal Emülatör ekranı

    Bu işlemle ilgili notlar:

    • Derleme süreci, Android'i derlemek için gerekenle aynı olduğundan önce kaynağı indirdikten sonra oluşturmak için biraz zaman tanıyın.
    • Başka dallar üzerinde çalışmak için $ANDROID_BRANCH öğesini başka bir şuna ayarlayın: branch/etiket ekleyin.
    • system.img gibi ortalama görüntüleme süresi (AVD) görüntüleri $ANDROID_PRODUCT_OUT seviyesinde oluşturulur. Önemli resimler hakkında daha fazla bilgi için şuraya bakın: Ortalama görüntüleme süresi sistem dizini üzerinden geçerlidir.
    • Bkz. README dosyasını kullanarak bu dosya, Android ağacınızdaki önceden oluşturulmuş emülatör ikili programlarının emülatörü çalıştırın.

Araç ortalama görüntüleme süresi oluşturma

Yeni bir araç ortalama görüntüleme süresi (AVD) eklemek, Yeni Cihaz Ekleme. Örneğin, 1660554 yeni bir avd_car ortalama görüntüleme süresi oluşturur.

Araç ortalama görüntüleme süresi oluşturmak için:

  1. Gerektiğinde şirket ve cihaz klasörü oluşturun. Bu örnekte, $ANDROID_BUILD_TOP/device/google_car/avd_car
  2. AVD'nin nasıl oluşturulacağını tanımlayan ürün oluşturma dosyasını (avd_car.mk) oluşturun.
  3. avd_car_device adlı, içinde bulunacak bir cihaz klasörü oluşturun BoardConfig.mk ve source.properties.
  4. Yeni makefile ve yeni lunch seçeneğini şuraya ekle: AndroidProducts.mk.
  5. Yeni avd_car ortalama görüntüleme süresi (AVD) oluşturmak ve çalıştırmak için:
    . build/envsetup.sh && lunch acar-userdebug && m -j32 && emulator &
ziyaret edin. Artık yeni AVD'nizde çoğu HMI ve uygulama özelliğinin prototipini oluşturmaya hazırsınız.

Bir AVD resim zip dosyasını paketleme

AVD'nizi paketleyip başkalarıyla paylaşabilir veya başka bir cihazda kullanabilirsiniz hoş geldiniz. emu_img_zip.mk kullanın için şu adımları izleyin:

  1. AVD'yi oluşturduktan sonra emu_img_zip ürününü hedef olarak belirleyin:
    m emu_img_zip
  2. Ön eki sdk-repo-linux-system-images olan AVD görseli zip dosyası $ANDROID_PRODUCT_OUT adlı klasörde oluşturuldu.

AVD çekirdeği oluşturma

AVD çekirdekleri, tümü önceden oluşturulmuş görüntüler olması bakımından diğer Android çekirdeklerine benzer. Normalde, Google Analytics 4'te verilen önceden oluşturulmuş standart Japon balığı çekirdeği her Android sürümü için geçerlidir.

Çekirdek değişiklikleriyle deneme yapmak için:

  1. Aşağıdaki talimatları uygulayın:
    mkdir goldfish-kernel-54
    cd goldfish-kernel-54
    repo init -u https://android.googlesource.com/kernel/manifest -b
    common-android11-5.4
    repo sync
    BUILD_CONFIG=common/build.config.gki.x86_64 build/build.sh
    BUILD_CONFIG=common-modules/virtual-device/build.config.goldfish.x86_64
    build/build.sh
    ls -l ./out/android11-5.4/dist/
    
    .
  2. Kod tabanındaki çekirdek ikili programını AVD oluşturma dosyasına göre değiştirin. Örneğin, x86_64-vendor.mk x86_64-kernel.mk dahildir.

Çekirdek kodu ve yapılandırma aşağıdaki gibidir:

Öğe Değer
Şube common-android11-5.4 (Android 11'de kullanılır)
Manifest kernel/manifest/common-android11-5.4
ortak-modüller/sanal-cihaz kernel/common-modules/virtual-device/android11-5.4
Çekirdek kernel/common/android11-5.4

Yeni cihaz profili oluşturma

Kullanıcıların Android Studio AVD Yöneticisi'nde belirli bir ortalama görüntüleme süresi (AVD) oluşturmalarına izin vermek için şuraya bakın: Sanal cihazlar oluşturun ve yönetin. Cihaz üreticileri ekran boyutu ve DPI gibi kendi donanım özelliklerini tanımlayabilirler. AVD görüntüsüne dahil edilen bir devices.xml dosyası kullanılarak yapılabilir.

  • Örneğin, automotive.xml bölgesindeki Otomotiv Cihaz profillerine bakın.
  • HMI geliştirme veya prototip oluşturma için cihaza birden fazla cihaz eklenebilir. dosyası oluşturun.
  • Dosyayı, [ABI] klasöründeki OEM AVD görseli zip dosyasına ekleyin. Örneğin, x86_64 olarak.
  • Cihaz üreticileri ayrıca, emülatör görünümü edinin. Örneğin, daha yüksek kaliteli bir kullanıcı deneyimi için ek donanım düğmeleri tanımlayabilirsiniz. Bu sadece geliştirici iş akışları için değil, kullanıcı deneyimi araştırması gibi diğer görevler için de faydalıdır. bahsedeceğim.

AVD resim XML dosyasını oluşturma

Cihaz üreticileri, Android Studio'nun indirmesi için bir AVD Resim XML dosyası oluşturabilir. somut olarak ortaya koyar.

  • Örneğin, AAOS AVD resim XML dosyasına (sys-img2-1.xml) bakın.
  • Cihaz üreticileri, hedef kullanıcıları için kendi OEM AVD lisans sözleşmelerini tanımlayabilir (Onur sistemini kullanarak) Android Emulator lisansına sahip. Android Studio bu tür bir lisans eklendiğinde kullanıcı rızası alır.

Görseli oluşturmak için:

  1. Bir AVD görüntüsü zip dosyası hazırlayın.
  2. ${ANDROID_PRODUCT_OUT}/sdk-repo-linux-system-images-*.zip adlı sıkıştırılmış dosyayı açın.
  3. devices.xml dosyasını x86_64 klasörüne ekleyin ve ardından dosyayı şunun için sıkıştırın: ZIP dosyası biçimindedir. Örneğin, oem_avd_img_x86_64.zip olarak.
  4. oem-sys-img2-1.xml adlı cihazı güncelleyin.
  5. ZIP dosyasının adını, boyutunu ve shasum'unu güncelleyin (örnek XML dosyaları tools) bilgileri gösterilir.

Örneğin, ortalama görüntüleme süresini Google Cloud Storage'da barındırmak için: bkz. Oluşturma depolama alanı paketleri hakkında daha fazla bilgi edinin.

AVD'yi yüklemek ve herkese açık hâle getirmek için şuraya bakın: Verileri herkese açık hale getirme:

BUCKET_NAME="aaos-avd"
gsutil mb gs://$BUCKET_NAME
gsutil cp oem_avd_img_x86_64.zip gs://$BUCKET_NAME
gsutil cp oem-sys-img2-1.xml gs://$BUCKET_NAME
gsutil iam ch allUsers:objectViewer gs://$BUCKET_NAME

AVD resim SDK'sı eklenti URL'sinin biçimi şu şekildedir: https://storage.googleapis.com/$BUCKET_NAME/oem-sys-img2-1.xml. Örneğin, BUCKET_NAME aaos-avd ise URL şöyle olur: https://storage.googleapis.com/aaos-avd/oem-sys-img2-1.xml.

AVD görselini Android Studio kullanıcılarıyla paylaşma

Kullanıcılarınızın Android Studio'dan ortalama görüntüleme süresini (AVD) indirip kullanabilmesi için şunları yapabilirsiniz: SDK eklentisi XML dosyası sağlayın. Ayrıntılar için bkz. IDE ve SDK araçlarını güncelleyin.

Ortalama görüntüleme süresini ağdan indirmek için:

  1. Resim zip dosyasını ve XML dosyalarını bir sunucuda barındırın.
  2. Hedef kullanıcılarınıza URL'yi sağlayın.
  3. (İsteğe bağlı) Erişimi kullanıcı adı ve şifreye göre sınırlandırın.

Alternatif olarak, geliştirme sürecini hızlandırmak için AVD'yi yerel bir dizine indirin:

  1. XML dosyalarını ve XML dosyasında belirtilen tüm yapıları bir klasöre kaydedin (örneğin, ADDON_DIR adlı tüm AVD resim zip dosyaları).
  2. URL'yi file://$ADDON_DIR/oem-sys-img2-1.xml olarak belirtin.