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:
- Salin konten skrip
launch_emu.sh
ke file lokal, dengan asumsi Anda menggunakanlaunch_emu.sh
sebagai nama file lokal. - Buat skrip lokal Anda dapat dieksekusi. Misalnya, jalankan
chmod +x ./launch_emu.sh
. - Periksa opsi yang tersedia dengan menjalankan skrip dengan
./launch_emu.sh -h
. - Di
ci.android.com
, buka cabangaosp-main-throttled
dan pilih build terbaru dengansdk_car_x86_64
berwarna hijau. Misalnya, 11370359. Jika Anda tidak melihat informasi build, logout dari Akun Google Anda dan coba lagi. - Download dan instal file biner yang relevan dengan emulator dengan ID build. Misalnya
./launch_emu.sh -i -a 11370359
. - Setelah itu, Anda dapat menggunakan
./launch_emu.sh
untuk meluncurkan emulator yang didownload dan diinstal (jangan gunakan opsi-i
atau-a
). - 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):
- 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 - Build image AVD:
. build/envsetup.sh && lunch sdk_car_x86_64-userdebug && m -j32
- 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:
- Buat folder perusahaan dan perangkat sesuai kebutuhan. Contoh ini menggunakan
$ANDROID_BUILD_TOP/device/google_car/avd_car
. - Buat makefile produk,
avd_car.mk
, yang menentukan cara mem-build AVD. - Buat folder perangkat,
avd_car_device
, yang akan berisiBoardConfig.mk
dansource.properties
. - Tambahkan
makefile
baru dan pilihanlunch
baru keAndroidProducts.mk
. - Untuk mem-build dan menjalankan AVD
avd_car
baru:. build/envsetup.sh && lunch acar-userdebug && m -j32 && emulator &
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:
- Setelah mem-build AVD, jadikan
emu_img_zip
sebagai target:m emu_img_zip
- 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:
- 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/
- Ganti biner kernel di codebase sesuai dengan makefile AVD. Misalnya,
x86_64-vendor.mk
menyertakanx86_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, sebagaix86_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:
- Siapkan file zip image AVD.
- Ekstrak
${ANDROID_PRODUCT_OUT}/sdk-repo-linux-system-images-*.zip
. - Tambahkan
devices.xml
ke folderx86_64
, lalu kompresi file dalam file zip. Misalnya, sebagaioem_avd_img_x86_64.zip
. - Update
oem-sys-img2-1.xml
. - 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:
- Hosting file zip gambar dan file XML di server.
- Berikan URL kepada pengguna target Anda.
- (Opsional) Batasi akses berdasarkan nama pengguna dan sandi.
Atau, untuk mempercepat pengembangan, download AVD ke direktori lokal:
- Simpan file XML dan semua artefak yang ditentukan dalam file XML ke folder
(misalnya, semua file zip gambar AVD) bernama
ADDON_DIR
. - Tentukan URL sebagai
file://$ADDON_DIR/oem-sys-img2-1.xml
.