Perangkat virtual Android sebagai platform pengembangan

Untuk menggunakan Perangkat Virtual Android (AVD), Android Emulator Mendukung Antarmuka Pengguna Grafis (GUI) dan Antarmuka Baris Perintah (CLI). Anda memilih alur kerja yang optimal untuk lingkungan Anda.

  • Membuat dan mengelola perangkat virtual GUI adalah alat sederhana yang disediakan untuk sebagian besar pengembang dan pengguna aplikasi.
  • Memulai emulator dari command line menyediakan cara yang fleksibel untuk pengguna super dan otomatisasi. Misalnya, untuk menggunakan beberapa AVD atau untuk menyiapkan pengujian berkelanjutan dan continuous integration. Untuk memulai, lihat contoh di alat).

Meluncurkan AVD Mobil AOSP menggunakan bawaan

Untuk meluncurkan dan menguji dengan cepat menggunakan AVD Mobil AOSP bawaan, gunakan skrip open source untuk mendownload dan meluncurkan build emulator dari ci.android.com Skrip telah diuji pada macOS dan Linux.

Anda memerlukan Curl untuk menggunakan skrip ini.

Untuk menjalankan skrip:

  1. Salin launch_emu.sh konten skrip ke file lokal Anda, dengan asumsi Anda menggunakan launch_emu.sh sebagai nama file lokal.
  2. Jadikan skrip lokal Anda dapat dieksekusi. Misalnya, jalankan chmod +x ./launch_emu.sh.
  3. Periksa opsi yang tersedia dengan menjalankan skrip menggunakan ./launch_emu.sh -h.
  4. Di ci.android.com, buka aosp-main-throttled dan pilih build terbaru tempat sdk_car_x86_64 adalah hijau. Misalnya, 11370359. Jika Anda tidak melihat build keluar dari Akun Google, lalu coba lagi.
  5. Download dan instal file biner yang relevan dengan emulator dengan ID build. Misalnya ./launch_emu.sh -i -a 11370359.
  6. Setelah ini, Anda dapat menggunakan ./launch_emu.sh untuk meluncurkan aplikasi yang telah didownload dan diinstal emulator (jangan gunakan opsi -i atau -a).
  7. Untuk mendownload dan menginstal ID build lain, jalankan ./launch_emu.sh -c untuk membersihkan Workspace, lalu ulangi Langkah 4 dan Langkah 5 di atas.

Untuk menentukan Android emulator Opsi startup command line saat meluncurkan emulator, gunakan opsi -v. Contoh:

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

Membangun AVD Mobil AOSP

Proses untuk membangun AVD Mobil AOSP mirip dengan Membuat image AVD untuk ponsel (misalnya, AOSP_car_x86_64):

  1. Untuk menyiapkan lingkungan pengembangan dan mengidentifikasi cabang, lihat Alat Kontrol Sumber. Kemudian tinjau Mendownload Sumber:
    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. Bangun image AVD:
    . build/envsetup.sh && lunch sdk_car_x86_64-userdebug && m -j32
  3. Jalankan image AVD (tambahkan Opsi startup command line tambahan sesuai kebutuhan):
    emulator &

    Contoh:

    Gambar 1. Layar Android Virtual Emulator

    Catatan tentang proses ini:

    • Karena proses build sama dengan yang diperlukan untuk membangun Android untuk perangkat fisik, tunggu beberapa saat untuk mendownload sumber dan kemudian membangunnya.
    • Untuk menangani cabang lain, tetapkan $ANDROID_BRANCH ke cabang lain cabang/tag.
    • Image AVD, seperti system.img, dibuat di $ANDROID_PRODUCT_OUT. Untuk mempelajari lebih lanjut image utama, lihat AVD direktori sistem.
    • Lihat README untuk mempelajari bagaimana biner emulator bawaan dalam hierarki Android Anda digunakan untuk menjalankan emulator.

Membuat AVD Mobil

Menambahkan AVD mobil baru hampir sama dengan Menambahkan Perangkat Baru. Misalnya, 1660554 membuat AVD avd_car baru.

Untuk membuat AVD Mobil:

  1. Buat perusahaan dan folder perangkat sesuai kebutuhan. Contoh ini menggunakan $ANDROID_BUILD_TOP/device/google_car/avd_car.
  2. Buat makefile produk, avd_car.mk, yang menentukan cara membangun AVD.
  3. Buat folder perangkat, avd_car_device, untuk memuat BoardConfig.mk dan source.properties.
  4. Tambahkan makefile baru dan pilihan lunch baru ke AndroidProducts.mk.
  5. Untuk membangun dan menjalankan AVD avd_car baru:
    . build/envsetup.sh && lunch acar-userdebug && m -j32 && emulator &
Anda sekarang siap untuk membuat prototipe sebagian besar fitur HMI dan aplikasi di AVD baru.

Mengemas file ZIP gambar AVD

Anda dapat mengemas dan membagikan AVD kepada orang lain atau menggunakannya di AVD lain komputer Anda Gunakan emu_img_zip.mk untuk menghasilkan file zip image AVD:

  1. Setelah Anda membangun AVD, jadikan emu_img_zip sebagai target:
    m emu_img_zip
  2. File zip image AVD, yang diawali dengan sdk-repo-linux-system-images, adalah dibuat di folder bernama $ANDROID_PRODUCT_OUT.

Membangun kernel AVD

Kernel AVD mirip dengan kernel Android lainnya karena semuanya merupakan image bawaan. Biasanya, Anda bisa menggunakan {i> kernel ikan mas<i} standar yang sudah dibuat sebelumnya setiap rilis Android.

Untuk bereksperimen dengan perubahan kernel:

  1. Jalankan rangkaian petunjuk berikut:
    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. Ganti biner kernel di codebase sesuai dengan makefile AVD. Misalnya, x86_64-vendor.mk termasuk x86_64-kernel.mk.

Kode dan konfigurasi kernel terletak sebagai berikut:

Item Nilai
Cabang common-android11-5.4 (digunakan di Android 11)
Manifes kernel/manifest/common-android11-5.4
modul-umum/perangkat-virtual kernel/common-modules/virtual-device/android11-5.4
Kernel kernel/common/android11-5.4

Membuat profil perangkat baru

Untuk memungkinkan pengguna membuat AVD khusus di Android Studio AVD Manager, lihat Membuat dan mengelola perangkat virtual. Produsen perangkat dapat menentukan spesifikasi perangkat keras mereka sendiri, seperti ukuran layar dan DPI, melalui penggunaan file devices.xml yang disertakan dalam image AVD.

  • Misalnya, lihat profil Perangkat Automotive di automotive.xml.
  • Untuk pengembangan atau pembuatan prototipe HMI, beberapa perangkat dapat ditambahkan ke untuk image AVD yang sama.
  • Sertakan file dalam file zip gambar AVD OEM di folder [ABI]. Misalnya sebagai x86_64.
  • Pembuat perangkat juga dapat Membuat skin emulator. Misalnya, untuk mendefinisikan tombol perangkat keras tambahan untuk UX dengan fidelitas lebih tinggi. Tidak hanya berguna untuk alur kerja developer, tetapi juga untuk tugas lain seperti riset UX dan meninjau.

Membuat file XML gambar AVD

Pembuat perangkat dapat membuat file XML Gambar AVD untuk didownload oleh Android Studio anotasi.

  • Misalnya, lihat file XML gambar AVD AAOS, sys-img2-1.xml.
  • Produsen perangkat dapat menentukan perjanjian lisensi AVD OEM mereka sendiri untuk target pengguna mereka (menggunakan sistem kehormatan), dengan lisensi untuk Android Emulator. Android Studio akan mendapatkan konsensus pengguna jika lisensi tersebut disertakan.

Untuk membuat gambar:

  1. Siapkan file zip gambar AVD.
  2. Ekstrak file ${ANDROID_PRODUCT_OUT}/sdk-repo-linux-system-images-*.zip.
  3. Tambahkan devices.xml ke folder x86_64, lalu kompresi file file ZIP. Misalnya sebagai oem_avd_img_x86_64.zip.
  4. Perbarui oem-sys-img2-1.xml.
  5. Perbarui nama file ZIP, ukuran, dan shasum (contoh file XML diberikan di tools).

Misalnya, untuk menghosting AVD di Google Cloud Storage, lihat Membuat bucket penyimpanan.

Untuk mengupload dan membuat AVD dapat diakses secara publik, lihat Membuat data menjadi publik:

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

Format URL add-on SDK image AVD adalah: https://storage.googleapis.com/$BUCKET_NAME/oem-sys-img2-1.xml. Misalnya, jika BUCKET_NAME adalah aaos-avd, URL-nya adalah: https://storage.googleapis.com/aaos-avd/oem-sys-img2-1.xml.

Membagikan image AVD kepada pengguna Android Studio

Agar pengguna dapat mendownload image AVD dan menggunakan AVD dari Android Studio, Anda dapat menyediakan file XML add-on SDK. Untuk mengetahui detailnya, lihat Update IDE dan SDK Tools.

Untuk mendownload AVD dari jaringan:

  1. Menghosting file zip gambar dan file XML di server.
  2. Masukkan URL untuk pengguna target Anda.
  3. (Opsional) Batasi akses berdasarkan nama pengguna dan sandi.

Atau, untuk mempercepat pengembangan, download AVD ke direktori lokal:

  1. Simpan file XML dan semua artefak yang ditentukan dalam file XML ke folder (misalnya, semua file zip gambar AVD) yang bernama ADDON_DIR.
  2. Tentukan URL sebagai file://$ADDON_DIR/oem-sys-img2-1.xml.