Perangkat Virtual Android sebagai platform pengembangan

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

  • Membuat dan mengelola perangkat virtual GUI adalah alat sederhana yang disediakan untuk sebagian besar developer dan pengguna aplikasi.
  • Memulai emulator dari command line memberikan cara yang fleksibel bagi pengguna tingkat lanjut dan otomatisasi. Misalnya, untuk menggunakan beberapa AVD atau 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 di macOS dan Linux.

Anda memerlukan Curl untuk menggunakan skrip ini.

Untuk menjalankan skrip:

  1. Salin konten skrip launch_emu.sh ke file lokal, dengan asumsi Anda menggunakan launch_emu.sh sebagai nama file lokal.
  2. Buat skrip lokal Anda dapat dieksekusi. Misalnya, jalankan chmod +x ./launch_emu.sh.
  3. Periksa opsi yang tersedia dengan menjalankan skrip dengan ./launch_emu.sh -h.
  4. Di ci.android.com, buka cabang aosp-main-throttled dan pilih build terbaru dengan sdk_car_x86_64 berwarna hijau. Misalnya, 11370359. Jika Anda tidak melihat informasi build, logout dari Akun Google Anda dan coba lagi.
  5. Download dan instal file biner yang relevan dengan emulator dengan ID build. Misalnya ./launch_emu.sh -i -a 11370359.
  6. Setelah itu, Anda dapat menggunakan ./launch_emu.sh untuk meluncurkan emulator yang didownload dan diinstal (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 opsi Opsi startup command line emulator Android saat meluncurkan emulator, gunakan opsi -v. Contoh:

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

Mem-build AVD Mobil AOSP

Proses untuk mem-build AVD Mobil AOSP mirip dengan Mem-build 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. Build 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 mem-build Android untuk perangkat fisik, tunggu beberapa saat untuk mendownload sumber, lalu mem-build-nya.
    • Untuk mengerjakan cabang lain, tetapkan $ANDROID_BRANCH ke cabang/tag lain.
    • Image AVD, seperti system.img, dibuat di $ANDROID_PRODUCT_OUT. Untuk mempelajari gambar utama lebih lanjut, lihat direktori sistem AVD.
    • Lihat file README untuk mempelajari cara biner emulator bawaan di 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 folder perusahaan dan perangkat sesuai kebutuhan. Contoh ini menggunakan $ANDROID_BUILD_TOP/device/google_car/avd_car.
  2. Buat makefile produk, avd_car.mk, yang menentukan cara mem-build AVD.
  3. Buat folder perangkat, avd_car_device, yang akan berisi BoardConfig.mk dan source.properties.
  4. Tambahkan makefile baru dan pilihan lunch baru ke AndroidProducts.mk.
  5. Untuk mem-build dan menjalankan AVD avd_car baru:
    . build/envsetup.sh && lunch acar-userdebug && m -j32 && emulator &
Anda kini siap membuat prototipe sebagian besar fitur HMI dan aplikasi di AVD baru.

Memaketkan file ZIP gambar AVD

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

  1. Setelah mem-build AVD, jadikan emu_img_zip sebagai target:
    m emu_img_zip
  2. File ZIP gambar AVD, yang diawali dengan sdk-repo-linux-system-images, dibuat di folder bernama $ANDROID_PRODUCT_OUT.

Mem-build kernel AVD

Kernel AVD mirip dengan kernel Android lainnya karena semuanya adalah image bawaan. Biasanya, Anda dapat menggunakan image bawaan kernel goldfish standar seperti yang ada di 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 menyertakan 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
common-modules/virtual-device kernel/common-modules/virtual-device/android11-5.4
Biji Jagung Meletup kernel/common/android11-5.4

Membuat profil perangkat baru

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

  • Misalnya, lihat profil Perangkat Otomotif di automotive.xml.
  • Untuk pengembangan atau pembuatan prototipe HMI, beberapa perangkat dapat ditambahkan ke file untuk image AVD yang sama.
  • Sertakan file dalam file zip image AVD OEM di folder [ABI]. Misalnya, sebagai x86_64.
  • Produsen perangkat juga dapat Membuat skin emulator. Misalnya, untuk menentukan tombol hardware tambahan untuk UX fidelitas yang lebih tinggi. Hal ini tidak hanya berguna untuk alur kerja developer, tetapi juga untuk tugas lain seperti penelitian dan peninjauan UX.

Membuat file XML image AVD

Produsen perangkat dapat membuat file XML Image AVD agar Android Studio dapat mendownloadnya.

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

Untuk membuat gambar:

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

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

Untuk mengupload dan membuat AVD dapat diakses secara publik, lihat Membuat data 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 Anda dengan Android Studio, Anda dapat menyediakan file XML add-on SDK. Untuk mengetahui detailnya, lihat Mengupdate IDE dan SDK Tools.

Untuk mendownload AVD dari jaringan:

  1. Hosting file zip gambar dan file XML di server.
  2. Berikan URL kepada 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) bernama ADDON_DIR.
  2. Tentukan URL sebagai file://$ADDON_DIR/oem-sys-img2-1.xml.