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:
- Salin
launch_emu.sh
konten skrip ke file lokal Anda, dengan asumsi Anda menggunakanlaunch_emu.sh
sebagai nama file lokal. - Jadikan skrip lokal Anda dapat dieksekusi. Misalnya, jalankan
chmod +x ./launch_emu.sh
. - Periksa opsi yang tersedia dengan menjalankan skrip menggunakan
./launch_emu.sh -h
. - Di
ci.android.com
, bukaaosp-main-throttled
dan pilih build terbaru tempatsdk_car_x86_64
adalah hijau. Misalnya, 11370359. Jika Anda tidak melihat build keluar dari Akun Google, lalu coba lagi. - Download dan instal file biner yang relevan dengan emulator dengan ID build. Misalnya
./launch_emu.sh -i -a 11370359
. - Setelah ini, Anda dapat menggunakan
./launch_emu.sh
untuk meluncurkan aplikasi yang telah didownload dan diinstal emulator (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 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):
- 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 - Bangun 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 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 pada$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:
- Buat perusahaan dan folder perangkat sesuai kebutuhan. Contoh ini menggunakan
$ANDROID_BUILD_TOP/device/google_car/avd_car
. - Buat makefile produk,
avd_car.mk
, yang menentukan cara membangun AVD. - Buat folder perangkat,
avd_car_device
, untuk memuatBoardConfig.mk
dansource.properties
. - Tambahkan
makefile
baru dan pilihanlunch
baru keAndroidProducts.mk
. - Untuk membangun dan menjalankan AVD
avd_car
baru:. build/envsetup.sh && lunch acar-userdebug && m -j32 && emulator &
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:
- Setelah Anda membangun AVD, jadikan
emu_img_zip
sebagai target:m emu_img_zip
- 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:
- 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
termasukx86_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.
Pembuat 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 sebagaix86_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:
- Siapkan file zip gambar AVD.
- Ekstrak file
${ANDROID_PRODUCT_OUT}/sdk-repo-linux-system-images-*.zip
. - Tambahkan
devices.xml
ke folderx86_64
, lalu kompresi file file ZIP. Misalnya sebagaioem_avd_img_x86_64.zip
. - Perbarui
oem-sys-img2-1.xml
. - 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:
- Menghosting file zip gambar dan file XML di server.
- Masukkan URL untuk 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) yang bernama
ADDON_DIR
. - Tentukan URL sebagai
file://$ADDON_DIR/oem-sys-img2-1.xml
.