waydroid
Run Android apps on Linux
TLDR
Start Waydroid
Initialize Waydroid (required on first run or after reinstalling Android)
Install a new Android app from a file
Launch an Android app by its package name
Start or stop the Waydroid session
Manage the Waydroid container
Open Waydroid shell
Adjust Waydroid window dimensions
SYNOPSIS
waydroid
PARAMETERS
show-full-ui
Display the full Android UI, including system bars and navigation.
session
Starts or stops the Waydroid session. Requires root privileges.
shell
Opens an adb shell into the Waydroid container.
prop
Get or set build properties in the Waydroid container.
install
Install an APK file into the Waydroid container.
upgrade
Upgrade Waydroid images
apk-install
Installs one or more APKs into Waydroid.
app-remove
Removes an application from Waydroid.
list-apps
Lists installed apps in Waydroid.
log
Shows Waydroid logs.
events
Shows Waydroid events.
info
Shows information about Waydroid.
status
Shows status of waydroid.
netstatus
Shows network status of waydroid.
gain-system-access
Gains system access inside waydroid.
DESCRIPTION
Waydroid is a container-based approach to boot a full Android system on a regular GNU/Linux system. It allows you to run Android applications on your Linux desktop environment as if they were native applications. Waydroid uses the Linux kernel features such as namespaces and cgroups to isolate the Android system from the host system. It leverages the Android Open Source Project (AOSP) to provide a full Android environment. This means you can install and run most Android apps that don't rely on hardware features not available on a desktop, such as specific sensors or cellular connectivity. It aims to provide a seamless integration between Android and Linux, allowing users to benefit from both systems simultaneously.
Waydroid is not an emulator, it uses the host's kernel. This result in performance that is much closer to native, compared to traditional emulators. Note: Waydroid is still under development and may have some limitations.
CAVEATS
Waydroid is under active development. Not all Android apps are guaranteed to work. Requires a modern Linux distribution with kernel namespaces and cgroups support. Proper graphics driver support is essential for good performance. Root privileges are often required for certain operations, particularly managing the Waydroid session. SELinux can also cause issues, so it is sometimes necessary to disable it.
GRAPHICS ACCELERATION
Proper graphics acceleration is crucial for a smooth Waydroid experience. Ensure your system has the correct drivers installed for your graphics card (e.g., Mesa for AMD/Intel, proprietary NVIDIA drivers). Wayland and X11 are both supported, but Wayland is recommended.
NETWORKING
Waydroid typically handles networking automatically, but sometimes network issues can arise. Ensure that the `waydroid-net.service` is running and properly configured. You might need to troubleshoot network bridges or firewall settings if you encounter connectivity problems.
AUDIO
Audio integration can sometimes be problematic. Make sure PulseAudio is properly configured on your host system. Waydroid usually uses PulseAudio for audio output, and compatibility issues can lead to sound not working correctly.
HISTORY
Waydroid emerged as an alternative to Anbox, aiming to provide a more complete and integrated Android experience on Linux. Its development has been driven by the need for a performant and relatively easy-to-use solution for running Android applications on desktop Linux systems. The project continues to evolve with regular updates and improvements from its developers and community contributors.
SEE ALSO
adb(1)