- We've seen issues running the Windows emulator with Riot Vanguard active. The Windows emulator now detects Vanguard anti-cheat and pops up a warning message if Vanguard is detected.
- The emulator now prints a warning if unsupported options are passed to -prop (Only qemu.* props are supported).
- When using the Linux emulator embedded in Studio, we found that if this is done through Chrome Remote Desktop, there is a bug where XDG_RUNTIME_DIR is not set and may cause the embedded emulator to fail to appear due to the emulator discovery files being placed in XDG_RUNTIME_DIR.
- https://bugs.chromium.org/p/chromium/issues/detail?id=1077449
- As a workaround, the emulator now falls back to using discovery files in a possibly-different directory that is based on user UID (/run/user/<uid>).
- Emulator icons updated to reflect Studio 4.1 branding.
- When building the emulator on Windows, there should be less chance of seeing flaky failures to write to files. (Windows build instructions: https://android.googlesource.com/platform/external/qemu/+/refs/heads/emu-master-dev/android/docs/WINDOWS-DEV.md)
- gRPC endpoint now supports sending SMS to the device.
- Updated WebRTC libraries to M83.
- darwinn pipe endpoint has been removed.
- When hw.gltransport=virtio-gpu-pipe, performance is improved by not spinning on the host in transfers from host to guest.
ARM64 host support
- Linux emulator source code now supports cross compilation from x86_64 to arm64 hosts, enabling running arm64 system images with KVM virtualization and host side rendering. Currently, only -gpu swiftshader_indirect (Swiftshader arm64 host rendering) is supported, but a compatible set of host GPU libEGL/libGLESv2/libGLESv1_CM libraries may also be used via replacing the libraries in lib64/gles_swiftshader with them and then relaunching with -gpu swiftshader_indirect. Snapshots may also not be working (add -no-snapshot to the command line). Instructions:
pip install absl-pypip install urlfetchsudo apt-get install crossbuild-essential-arm64
mkdir emucd emurepo init -u https://android.googlesource.com/platform/manifest -b emu-master-dev --depth=1repo sync -qcj 12cd external/qemupython android/build/python/cmake.py --noqtwebengine --noshowprefixforinfo --target linux_aarch64