Changes

Jump to navigation Jump to search

Android emulators

19,360 bytes added, 5 May
m
Comparisons
|emulated = {{✓}}
}}
 
:''This page is about software that emulates Android on other hardware, like desktops.''{{for|emulators that run on Android|Emulators on Android}}
However, the Linux kernel is flexible enough that it can be emulated well, unlike iOS, older cell phone models, and older Japanese Galapagos mobile phones. While Android natively supports mice<ref group=N>If you have an Android device, you can confirm this by connecting a Bluetooth or USB mouse via a USB adapter.</ref>, most apps expect users to have a touchscreen, so Android emulators will usually default to emulating touchscreen presses like [[Nintendo DS emulators|DS emulation]] (though it can be less than ideal in many cases). The host's keyboard may often emulate the button controller add-ons, and some emulators support [[Xbox 360 emulators|Xbox 360]] controllers with some more tweaks.
 
To run Android apps on your computer, most of the Android emulators employ a two-step approach. First, they set up a virtual environment using [[Hypervisors|hypervisor]] (and of course support for [[Wikipedia:X86_virtualization#Hardware-assisted_virtualization|hardware assisting virtualization]] such as vt-x/amd-v and virtual gpu adapter such as [https://docs.mesa3d.org/drivers/virgl.html VirGL]). Then, they use [[Recommended_linux_distros#Emulation_focused|custom Android-x86 images]] and translation layer such as "[[Compatibility_layer|libhoudini or libndk or Intel BT]]" to convert instructions from ARM processors (used in phones) to work on your computer's x86 architecture. See [[#Hardware features]] supported ABI, API sections and [[#Enhancements]] built-in translation layer and VM columns for more information.
 
<references group=N/>
==Emulators==
;Before diving in,;*[[Hypervisors|Hardware-assisted virtualization]] feature must be turned from your BIOS for most of these methods due to performance reasons.;*You need to turn off Hyper-V from Windows Feature panel if [[Hypervisors|Type-2 hypervisor]] used by the emulator due to [[Hypervisors#Hyper-V_feature_conflict_issue|conflict issue]]. Having said that some emulators like BlueStacks provide special Hyper-V build for prevent this issue. Recently, with [https://support.bluestacks.com/hc/en-us/articles/22561951043981-BlueStacks-5-20-Release-Notes#01HMGBJDK8G7J7S9C0G5R9SBVR BlueStacks 5 version 5.20, you can now run BlueStacks with Hyper-V enabled] including all instances such as Nougat 32-bit, which will run as intended and no additional changes required.;*Tons of bloated, obsolete or non-active other Android "emulators" exists there but we're not gonna list them, see [https://emulation.gametechwiki.com/index.php?title=Android_emulators&diff=66635&oldid=66634#Emulators this page] for that.;*If you already have an Android device, we recommend using a mirroring application like "[https://github.com/Genymobile/scrcpy scrcpy]" instead of these "emulators".<div style="overflow-x:auto;width:100%">{| class="wikitable" style="text-align:center;width:100%"
|-
! scope="col"|Name
! scope="col"|Platform(s)
! scope="col"|Version
! scope="col"|VM<ref group=N>The VM column describes what backend technology the emulator uses. Emulators labeled with "VirtualBox" sometimes need the user to install [https://www.virtualbox.org/ Oracle VM VirtualBox[#Hardware_features|Hardware features]]. Usually, it is installed automatically.</ref>! scope="col"|[[Emulation Accuracy#Enhancements|AccuracyEnhancements]]! scope="col"|Compatibility
! scope="col"|<abbr title="Free/Libre and Open-Source Software">FLOSS</abbr>
! scope="col"|Active
! scope="col"|[[Recommended Emulators|Recommended]]
|-
! colspan="810"|PC x86|-|[[Genymotion]]|align=left|{{Icon|Windows|Linux|macOS}}|[https:/ x86/www.genymotion.com/download/ {{GenymotionVer}}]|{{~}}|{{~}}|?|{{✗}} ||{{✓}} ||{{~}}
|-
|[https://play.google.com/googleplaygames Google Play Games]
|align=left|{{Icon|Windows}}
|[https://play.google.com/googleplaygames#section-system-requirements Beta]<br/>[https://developer.android.com/games/playgames/emulator Developer]|[[Hypervisors{{~}}|{{~}}|Hyper-V]]<ref group=N name=HardwareAssistedVirtualizationsmall>[[Hypervisors|Hardware-assisted virtualizationhttps://play.google.com/googleplaygames/exploregames Only for selected titles]] feature must be turned on especially for performance reasons.(Beta build)<br/ref>|?(Developer build)</small>|? {{✗}} ||{{✓}} ||{{~}}
|-
|Windows Subsystem [https://learn.microsoft.com/en-us/windows/android/wsa/release-notes WSA]<br/><small>This shouldn't be confused with WSL or WSL2.<br/>See [[Hypervisor]] page for AndroidWSL2 and [[Compatibility layer]] page for WSL.</small>
|align=left|{{Icon|Windows}}
|Comes with Windows store<br/>[https://github.com/cinit/WSAPatch WSA patch for Windows 10]
|{{~}}|{{~}}||[https://github.com/riverar/wsa-app-compatibility#support-tables 66%<br/><small>368 out of 558 reported titles</small>]|?|{{~}}[Hypervisorshttps://learn.microsoft.com/en-us/windows/android/wsa/ *] ||{{~}}|Hyper-V|[https://waydro.id/index.html Waydroid]|align=left|{{Icon|Linux}}|[https://waydro.id/#install git]<br />[https://github.com/casualsnek/waydroid_script Extras script]|{{✗}}|{{✗}}
|?
|{{}} ||{{✓}} ||{{~}}<ref group=N>Windows subsystem for Android is an exception compared to bloated android emulators, as Microsoft made it and monetizing comes from the Windows copy you bought.</ref>
|-
|Android x86[https://trinityemulator.github.io/ Trinity]|align=left|{{Icon|Windows|Linux|macOS}}|[https://blissos.org/index.html#download <abbr title="BlissOS is the first Android-x86 derivative that includes weishu's KernelSU. With it, you can easily grant root permission for apps and even install Magisk modules without having to install Magiskgithub.">Bliss OS<com/abbr>]<brTrinityEmulator/>[https:TrinityEmulator//www.android-x86.org 8.1-r6releases git]|Not an emulator<br/><small>entire OS, though installable through VirtualBox or VMWare</small> <ref group=N name=HardwareAssistedVirtualization></ref>{{~}}|{{~}}|Mid?
|{{✓}} ||{{~}} ||{{~}}
|-
|Android Studio<br/><small>It's an IDE and it includes [https://developer.android.com/studio/intro/update#sdk-manager built-in Android Emulator]</small>|align=left|{{Icon|Windows|Linux}}|[https://developer.android.com/studio/archive Beta and Canary builds]<br/>[https://waydrodeveloper.android.idcom/studio/index4.html Waydroid0]|{{✓}}|{{~}}|?|<span title="Source-available"><sup>{{~}}</sup></span> ||{{✓}} ||{{~}}|-|[[Anbox]]
|align=left|{{Icon|Linux}}
|[https://waydrodocs.idanbox.io/userguide/#install .html git]|[https://emulation.gametechwiki.com/index.php/Compatibility_layer Not an emulator (wine-like approach)]{{✗}}|{{✗}}
|?
|{{✓}} ||{{}} ||{{~}}
|-
|[[BlueStacks]]
|align=left|{{Icon|Windows|macOS}}
|[https://wwwsupport.bluestacks.com/ hc/en-us/sections/360012290292-Release-Notes {{BlueStacksVer}}]|QEMU (before v2{{~}}|{{~}}|[https://support.bluestacks.5) com/hc/en-us/articles/ VirtualBox (after v2.4413818315789-Games-playable-on-different-Android-versions-on-BlueStacks-5)<ref group=N name=HardwareAssistedVirtualization></ref>|High?]|{{✗}} ||{{✓}} ||{{~}}<ref group=N N2 name=Bloatware>These emulators are closed-source, and while they're distributed for free, their devs look for roundabout ways to monetize them. '''Since these emulators closed-source and comes with adware and bloatware applications, it's important to research the developers background before using them to ensure their trustworthiness and avoid potential privacy risks before using them'''. MuMu, LDPlayer, NoxPlayer and MEmu developed by the various Chinese software companies and BlueStacks App Player developed by American technology company called "[https://www.wikidata.org/wiki/Q4928776 BlueStacks]". Despite data security regulations existing in various regions (e.g., [[Wikipedia:General_Data_Protection_Regulation|GDPR]] in the "EU", [[Wikipedia:California_Consumer_Privacy_Act|CCPA]] in "California", and [[Wikipedia:Cybersecurity_Law_of_the_People's_Republic_of_China|Cybersecurity Law]] in "PRC"), concerns regarding government surveillance in certain countries like the "PRC" remain significant. Therefore, we recommend exercising caution when relying on closed-source software developed within such jurisdictions. Make sure to check if there are pre-installed '''extra''' apps comes with these emulators and disable or uninstall them (e.g. BlueStacks X, BlueStacks Services etc.), monitor your internet traffic and processor activity to detect any abnormal activity and block domains accordingly if the need arises or use tools like '[https://github.com/henrypp/simplewall simplewall]'. Also avoid giving sensitive account data as much as is possible due to potential security reasons. Besides basic safety, these precautions often make impacted emulators run faster and more responsive when the adware services and apps are turned off.</ref>
|-
|MuMu
|align=left|{{Icon|Windows|macOS}}
|[https://mumu.163.com/global/download/en/index.html 1.1.0.2]<br /><small>[https://mumu.163.com 1.1.0.5 (v2.3.17) (Chinese VersionVer)]|VirtualBox<ref group=N name=HardwareAssistedVirtualization></refsmall>|High|{{✗}} ||{{✓}} ||{{~}}<ref group=N name=Bloatware></ref>?|-|KMRE|align=left|{{Icon|Linux}}|[https://archive.ubuntukylin.com/ubuntukylin/pool/partner/kmre_2.4.6.8+22.04_amd64.deb 2.4.6.8?]|Not an emulator (docker)|Low-Mid|{{?}} ||{{✓}} ||{{~}}|-|[[Genymotion]]|align=left|{{Icon|Windows|Linux|macOS}}|[https://www.genymotion.com/download/ {{GenymotionVer}}]|VirtualBox<ref group=N name=HardwareAssistedVirtualization></ref>|High|{{✗}} ||{{✓}} ||{{~}}<ref group=N N2 name=Bloatware>These emulators are usually closed-source, and while they're distributed for free, '''their devs look for roundabout ways to monetize them'''. One such high-profile case is BlueStacks or MEmu. Make sure to check if there are pre-installed apps on your emulator (and disable them), monitor your Internet connection download caps and processor activity to detect any abnormal activity (and block domains accordingly if the need arises,) and avoid giving sensitive account data as much as is possible (just in case it's key-logged). Besides basic safety, these precautions often make impacted emulators run much faster when the adware services and apps are turned off.</ref>
|-
|LDPlayer
|align=left|{{Icon|Windows}}
|[https://en.ldplayer.net/ 4.0.50.3]
|VirtualBox<ref group=N name=HardwareAssistedVirtualization></ref>?|?|High?|{{✗}} ||{{✓}} ||{{~}}<ref group=N N2 name=Bloatware></ref>
|-
|NoxPlayer
|align=left|{{Icon|Windows}}
|[https://www.bignox.com 7.0.2.7]
|VirtualBox<ref group=N name=HardwareAssistedVirtualization></ref>?|?|High?|{{✗}} ||{{✓}} ||{{~}}<ref group=N N2 name=Bloatware></ref>
|-
|MEmu
|align=left|{{Icon|Windows}}
|[https://www.memuplay.com/ {{MEmuVer}}]
|VirtualBox<ref group=N name=HardwareAssistedVirtualization></ref>?|?|High?|{{✗}} ||{{✓}} ||{{✗}}<ref group=N N2 name=Bloatware></ref>
|-
|Android Studio|align=left|{{Icon|Windows|Linux}}|[https://developer.android.com/studio/ 4.0]|QEMU|Low|<span title! colspan="Source-available10"><sup>{{~}}</sup></span> ||{{✓}} ||{{✗}}ARM
|-
|Andy OS[https://waydro.id/index.html Waydroid]|align=left|{{Icon|Windows|macOSLinux}}|[https://andyroidwaydro.netid/ 0#install git]<br />[https://github.47.226.1096.26com/casualsnek/waydroid_script Extras script]|VmWare{{✗}}|{{✗}}|High?|{{}} ||{{✓}} ||{{~}}
|-
|[[Anbox]]
|align=left|{{Icon|Linux}}
|[https://docs.anbox.io/ userguide/install.html git]|[https://emulation.gametechwiki.com/index.php/Compatibility_layer Not an emulator (wine-like approach)]{{✗}}|{{✗}}
|?
|{{✓}} ||{{✗}} ||{{✗}}
|}
</div>
 
==Android Linux distros ([[Recommended_Linux_distros#Android|...]])==
<div style="overflow-x:auto;width:100%">
{| class="wikitable" style="text-align:center;width:100%"
|-
! scope="col"|Name
! scope="col"|Frontend
! scope="col"|Latest Version
! scope="col"|[[#Hardware_features|Hardware features]]
! scope="col"|[[#Enhancements|Enhancements]]
! scope="col"|Compatibility
! scope="col"|<abbr title="Free/Libre and Open-Source Software">FLOSS</abbr>
! scope="col"|Active
! scope="col"|[[Recommended Emulators|Recommended]]
|-
! colspan="10"|x86|-|BlissOS|Android-x86 fork<br/><small>includes 3 launchers: Taskbar, Quickstep and Smart Dock.</small>|[https://blissos.org/index.html#download 16.9.x]|{{~}}|{{~}}|?|{{?}} ||{{✓}} ||{{~}}|-|Berry OS|Based on Android-x86 and Bliss OS<br/><small>Mini Desktop launcher is pre-installed.</small>|[https://github.com/yui0/berry-os/releases 2023-02-22]|{{?}}|{{?}}|?|{{?}} ||{{✓}} ||{{~}}|-|Android-x86|Trebuchet (KitKat version)|[https://www.android-x86.org 2022-03-25]|{{~}}|{{~}}|?|{{✓}} ||{{~}}<abbr title="Development activity on Android-x86 has significantly slowed down.">*</abbr> ||{{✗}}|} <references group=N2 /> ===Comparisons===;Genymotion:A closed-source Android emulator with lots of [[#Hardware_features|hardware features]], available for Windows, macOS, and Linux. It's not designed for gaming, but [https://support.genymotion.com/hc/en-us/articles/360003059737-Can-I-play-games-with-Genymotion it has decent software compatibility]. It's a commercial product though, aimed at software developers and QA teams and you'll need to create an account and download the free non-commercial use license. Except for the pay-to-remove "free for personal use" watermark on the screen, paid builds add features only useful for Android app developers. Unlike other closed-source emulators, Genymotion avoids pre-installing unnecessary apps. ;Google Play Games:Not to be confused with the [[Preservation_projects#Private_Platform_Servers|AMI DuOSservice of the same name]], Google Play Games is a PC application that lets you browse, download, and play '''select mobile games''' on a Windows desktop or laptop. Use developer build if you want more [[#Hardware_features|hardware feature]] support. Google Play Games is not yet available for Mac. Currently, only bunch of games are available for beta version but Google adding games on a regular basis.<ref>[https://play.google.com/googleplaygames#section-faqs Google Play Games FAQ]</ref>[[File:Android Studio built-in emulator device skin demonstration.jpeg|thumb|298px|Android Studio built-in emulator device skin demonstration, see [[#Enhancements]]]] ;Trinity:Open source Android emulator, it aims for high [https://youtu.be/tfq4MsxaHZw?t=855 performance] and it's even faster than Google Play Games emulator. See [https://github.com/TrinityEmulator/TrinityEmulator#2-detailed-instructions Guest OS image installation guide] for installation. Also see [https://www.youtube.com/watch?v=tfq4MsxaHZw OSDI '22 - Trinity: High-Performance Mobile Emulation through Graphics Projection] presentation for more information. ;Android Studio:Android Studio is an IDE software based on JetBrains' IntelliJ IDEA. It has built-in Android emulator with [https://developer.android.com/studio/run/managing-avds AVD (Android Virtual Device) configuration manager]. While its built-in emulator (which is literally called as [https://developer.android.com/studio/run/emulator "Android Emulator"]) may not be the fastest or software compatible (supports lots of OS image though), Android Studio shines as a developer's toolkit, offering seamless integration with coding, debugging, and testing tools for Android smartphones, [[Smart_TV_emulators#Android_TV.2FGoogle_TV|Android TVs]], [https://developer.android.com/wear Wear OS] and other Android ecosystem hardware. [https://www.youtube.com/watch?v=K1TTzkToDyE Recent updates brings new UI] aims to reduce complexity, provide easier access to essential features etc. It has built-in plugin manager which you can get Genymotion plugin for further enhance its emulation capabilities. Also you can use [https://developer.android.com/games/playgames/pg-emulator#debug adb to debugging with developer version of "Google Play Games" emulator]. Supports lots of [[#Hardware features]] and [[#Enhancements]]. See release notes for [https://developer.android.com/studio/releases/emulator built-in "Android Emulator"] and [https://androidstudio.googleblog.com/ Android Studio] for more information. ;Waydroid and Anbox:These are hypervisor-based containers. They run an Android OS image inside a container. It is a similar approach to WSA and Google Play Games. They work completely differently from Wine/Proton [[compatibility layers]], which translate API calls, without a hypervisor.:Anbox is a project that aims to run Android applications on Ubuntu distributions. It is in alpha state and only known to work on Ubuntu 16.04. Anbox requires custom kernel modules to run because, unlike other emulators which emulate the whole Linux kernel, this one uses the host system's Linux kernel directly. ;BlueStacks:A commercial software with a decent compatibility and performance. It has lots of [[#Enhancements|enhancement]] and [[#Hardware_features|hardware feature]] support. Newer versions bundled with "BlueStacks X" software and "BlueStacks services" which you can uninstall it afterwards, and you need to uninstall these during each update session unfortunately (BlueStacks Player do not need these apps). It includes Google Apps by default. ;MuMu Player:Another closed-source Android emulator. There are three versions of MuMu available:;MuMu Player 6::This version of MuMu uses Android 6.0 Marshmallow:;MuMu Player X::This one is based on Android 12 Snow Cone and may have more compatibility with games:;MuMu Nebula::This version runs Android 7.0 Nougat and is more suitable for low-end computers ;MEmu:Another closed-source Android emulator and also with good compatibility. ;LDPlayer:Another closed-source Android emulator and also with good compatibility. When testing games alongside Nox, LDPlayer shows better performance/compatibility with games. ==Hardware features==''These are Android operating system features. This list only includes hardware features that can be possible to emulated through software or will be possible in the near future. Including everything would result in an endless list.''<div style="overflow-x:auto;width:100%">{|class="wikitable" style="text-align:center; vertical-align:middle;width:100%"|- style="font-weight:bold;"! colspan=2 | Name! Genymotion[https://docs.genymotion.com/desktop/04_Emulating_sensors_and_features/]! Bluestacks! Google Play Games! Trinity! WSA! Android Studio! [[Recommended_Linux_distros#Android|BlissOS]]! [[Recommended_Linux_distros#Android|Android-x86]]|-| colspan=left2 | [[Wikipedia:Android_(operating_system)#Home_screen|Home screen]]<br/><small>This shouldn't be confused with emulator frontend/GUI.</small>|{{Icon✓}}|Windows{{✗}}| {{?}}<ref group=N4>[https://developer.android.com/games/playgames/pg-emulator#navigation Exclusive to developer builds] and [https://old.reddit.com/r/GalaxyTab/comments/mt5ekb/in_android_12_google_is_all_about_tablets_again/ it's looking similar to Android 12 tablet home menu launcher] ([https://youtu.be/2KEaPQpfzkQ?t=408 Demonstration]). It's unclear whether this app directly emulates the native home screen or provides an alternative UI/UX with limited features.</ref>| {{✓}}| {{✗}}| {{✓}}| {{✓}}| {{✓}}|-| colspan=2 | [https://developer.android.com/develop/ui/views/touch-and-input/game-controllers Game controllers]| {{✓}}| {{✓}}[https://support.bluestacks.com/hc/en-us/articles/4405061625485 *]| {{✓}}[https://blog.google/products/google-play/google-play-games-beta-october-2023-update/ *]| {{N}}[https://github.com/TrinityEmulator/TrinityEmulator/issues/3 *]|{{✓}}[https://amilearn.microsoft.com/en-us/windows/android/wsa/release-notes#build-22084000040 *]| {{?}}| {{✓}}[https://tested.blissos.org/hardware/inputs/gamepad/ *]| {{?}}|-| colspan=2 | [https://developer.android.com/develop/ui/views/touch-and-input/keyboard-input Keyboard input]| {{?}}| {{✓}}| {{✓}}[https://youtu.be/2KEaPQpfzkQ?t=153 *]| {{✓}}| {{?}}| {{✓}}| {{?}}| {{?}}|-| colspan=2 | [https://developer.android.com/games/playgames/input-mouse Mouse input]| {{✓}}| {{✓}}| {{✓}}[https://youtu.be/2KEaPQpfzkQ?t=153 *]| {{?}}| {{?}}| {{?}}| {{?}}| {{?}}|-| colspan=2 | [https://developer.android.com/jetpack/compose/touch-input/pointer-input/multi-touch Multi-touch]| {{✓}}[https://docs.genymotion.com/desktop/03_Virtual_devices/#touchscreen]| {{✓}}[https:/tech/www.bluestacks.com/multi-touch.html][https://www.bluestacks.com/blog/farewellbluestacks-exclusives/bluestacks-multi-touch-support-amiduosen.html]| {{?}}[https://support.google.com/googleplay/thread/249633800/ lack-of-multi-touch-support-on-play-games-beta?hl=en]| {{?}}| {{?}}| {{?}}| {{?}}| {{?}}|-| colspan=2| [https://developer.0android.com/media/camera/camerax Camera]| {{?}}| {{?}}| {{?}}| {{?}}| {{?}}| {{Y}}| {{?}}| {{?}}|-| colspan=2 | [https://developer.android.com/develop/connectivity/usb USB and USB passthrough]| {{✓}}| {{N}}[https://old.reddit.com/r/BlueStacks/comments/z54s8p/usb_devices_in_bluestacks/iy2gtgb/ *]| {{?}}| {{?}}| {{?}}| {{Y}}| {{?}}| {{?}}|-| colspan=2 | [https://developer.8android.8511com/develop/ui/views/notifications Notifications]|VirtualBox{{✓}}|Mid{{✓}}|{{~}}[https://developer.android.com/games/playgames/faq#q_can_we_use_push_notifications_for_google_play_games *]| {{✓}} |{{✓}}[https://learn.microsoft.com/en-us/windows/android/wsa/release-notes#build-220440000190 *]|{{}} |{{✓}}|{{}}
|-
|ARC Weldercolspan=2 | [https://developer.android.com/studio/run/emulator-install-add-files Sideloading/Installing]| {{?}}| {{✓}}<ref group=N4>If you're using latest version of BlueStacks you'll need to install a file manager to copy game cache when loading your own .apk files, or simply use .xapk containers.<br /ref>| {{~}}<smallref group=N4>(Google Chrome)Exclusive to developer builds, [https://youtu.be/2KEaPQpfzkQ?t=280 Demonstration]. For using sideloading in the developer builds you need to use adb install "AppName.apk" command in the Command Prompt.</smallref>|align{{✓}}<ref group=leftN4>[https://github.com/TrinityEmulator/TrinityEmulator/wiki/Advanced-Usages#adb-connection Use adb to connect] then use adb install command.</ref>|{{Icon|Windows|Linux|macOS|Web~}}|[https://developer.chromegithub.com/appsSimizfo/getstarted_arc ARC 50.5021.602.0WSATools#requisites *]|Original|Mid|{{}} ||{{}} ||{{}}
|-
|ARChon<br colspan=2 | [https://developer.android.com/develop/connectivity/><small>(Google Chrome)<wifi/small>wifi-scan Wi-Fi]|align=left{{✓}}|{{Icon✓}}|Windows{{✓}}|Linux{{✓}}|macOS|Web{{✓}}|{{✓}}[https://archon-runtimedeveloper.githubandroid.iocom/studio/run/ ARC 41.4410.238.0emulator-wifi *]|Original|Mid|<span title="Source-available"><sup>{{~}}</sup></span> ||{{✗}} ||{{}}
|-
|Droid4X|aligncolspan=left|{{Icon|Windows|macOS}}2 |[https://droid4xdeveloper.ccandroid.com/ 0.10.7reference/android/location/Location Location]|VirtualBox{{?}}|High{{?}}|{{?}} |{{?}}|{{?}} | {{✓}}[https://developer.android.com/studio/run/emulator-extended-controls *]|{{?}}|{{?}}
|-
|KoPlayercolspan=2 | [https://developer.android.com/develop/connectivity/bluetooth Bluetooth]|align=left|{{Icon|Windows?}}|{{N}}[https://koplayerpcsupport.bluestacks.com/ 2.0.0hc/en-us/articles/360061235612-Bluetooth-support-on-BlueStacks-5 *]|VirtualBox{{?}}|High{{?}}|{{N}} [https://xdaforums.com/t/looking-wsa-for-windows-11-where-bluetooth-also-works.4610551/post-88829045 *]|{{Y}}[https://stackoverflow.com/questions/22604305/how-to-use-android-emulator-for-testing-bluetooth-application *]|{{}} |[https://tested.blissos.org/hardware/connectivity/bluetooth/ *]|{{?}}
|-
|LeapDroidcolspan=2 | [https://developer.android.com/develop/sensors-and-location/sensors/sensors_motion Motion sensors]|align=left|{{Icon|Windows?}}|{{Y}}[httphttps://wwwsupport.leapdroidbluestacks.com/ 1.8.0hc/en-us/articles/360058638032-Advanced-settings-for-key-controls-in-BlueStacks-5-#%E2%80%9C9%E2%80%9D *]|VirtualBox{{?}}|High{{?}}|{{?}} |{{Y}}[https://developer.android.com/studio/run/emulator-extended-controls *]|{{?}} ||{{?}}
|-
|Peak App Playerrowspan=2 | Connectivity|align=left[[Preservation_projects#Private_Platform_Servers|Google Play Games]]<br/>[[Preservation_projects#Private_Platform_Servers|Google Play Services]]<br/><small>Achievements, Challenges, Leaderboards etc.</small>|{{Icon|Windows?}}|{{Y}}[http://web.archive.org/web/20191120002207/httphttps://wwwsupport.peakplayerbluestacks.netcom/index.phphc/en-us/peakplayerenarticles/ 1.2.360059697231-How-to-log-in-to-Google-Play-Store-on-BlueStacks-5 Beta 2*]|VirtualBox{{Y}}|High{{?}}|{{?}} |{{✓}}|{{?}} ||{{?}}[https://groups.google.com/g/android-x86/c/BGVX_bwpibA *]
|-
|Shashlik[[Wikipedia:Google_Cloud_Messaging|Google Cloud Messaging (GCM)]]|align=left{{?}}|{{Icon|Linux?}}|[http://www.shashlik.io/ 0.9.3]{{?}}|Original{{?}}|Low{{?}}|{{?}} ||{{?}} ||{{?}}
|-
|SmartGaGa|align! colspan=left|{{Icon|Windows}}9 |[http[Wikipedia://web.archive.org/web/20190820044528/https://www.smartgaga.com/ 1.1.646Android_version_history|OS version]]|VirtualBox|High|{{✗}} ||{{✗}} ||{{✗}}
|-
|Windroycolspan=2 | [[Wikipedia:Android_version_history#Android_4.4_KitKat|KitKat]] (API 19)<br/><small>Supporting [[Wikipedia:Android_version_history#Android_4.4_KitKat|Android 4.4 (KitKat)]] is crucial for emulators due to compatibility and [[Preservation_projects|preservation]] reasons.<br/> Older applications and games often rely on the "[[Wikipedia:Dalvik_(software)|Dalvik]]", which isn't present in newer versions and there could be '''[https://web.archive.org/web/20141215220606/http://www.androidruntime.com:80/list compatibility issues]'''.<br/>Android 5.0 (Lollipop)(API 21) introduced the "[[Wikipedia:Android_Runtime|Android RunTime]]" (ART), [[Wikipedia:Android_Runtime#History|replacing "Dalvik" entirely]].<br/>Having said that ART is mostly backwards compatible with Dalvik. See these sources for more information: [https://xdaforums.com/t/explained-art-runtime-in-android-4-4-kitkat.2622098/ 1], [https://www.geeksforgeeks.org/difference-between-dalvik-and-art-in-android/ 2], [https://developer.android.com/guide/practices/verifying-apps-art 3].</small>|align=left|{{Icon|WindowsN}}|<ref group=N4 name=GenymotionOSsupport>[https://sourceforgesupport.genymotion.netcom/hc/projectsen-us/windroyarticles/ 9511224511901-Which-Android-versions-are-available Genymotion: Which Android versions are available?], Since September 2022, Genymotion no longer provide Android 4.4and below images, see[https://support.0genymotion.com/hc/en-us/articles/360002708018-I-can-t-find-Android-4-4-and-below this page].</ref>| {{N}}<ref group=N4>You need to use [[Wikipedia:BlueStacks#BlueStacks_3|BlueStacks 3version]](not 3N), because it is the latest version supports KitKat.</ref>|Original{{N}}|Low{{N}}|{{N}} |{{Y}}|{{N}} |<ref group=N4 name=BlissOSsupport>[https://blissos.org/index.html#download BlissOS OS support].</ref>|{{Y}}<ref group=N4 name=Androidx86OSsupport>KitKat and Nougat supported with [https://sourceforge.net/projects/android-x86/files/ Android-x86].</ref>
|-
|Windroyecolspan=2 | [[Wikipedia:Android_version_history#Android_7.1_Nougat|7.1 Nougat]] (API 25)<br/><small>New JIT Compiler, making for 75 percent faster app installations and a 50 percent reduction in compiled code size.<br/>JIT compiler with code profiling to ART, which lets it constantly improve the performance of Android apps as they run.<br/>Vulkan 3D rendering API support.</small>|align{{Y}}<ref group=N4 name=leftGenymotionOSsupport></ref>|{{Icon|WindowsY}}|2<ref group=N4 name=BluestacksOSsupport>[https://support.bluestacks.9com/hc/en-us/articles/360058931031-How-to-utilize-the-different-Android-versions-available-on-BlueStacks-5#%E2%80%9C1%E2%80%9D Which Android versions are available on BlueStacks?].1</ref>|VirtualBox{{N}}|Mid{{N}}|{{N}} |{{Y}}|{{N}} |<ref group=N4 name=BlissOSsupport></ref>|{{Y}}<ref group=N4 name=Androidx86OSsupport></ref>
|-
|Xamarin colspan=2 | [[Wikipedia:Android_version_history#Android_12|Snow Cone]] (API 31)<br/><small>Android PlayerRuntime (ART) module added to the updatable core OS components via Google Play, added functionality to existing modules.</small>|align{{Y}}<ref group=N4 name=leftGenymotionOSsupport></ref>|{{IconN}}<ref group=N4 name=BluestacksOSsupport></ref>|Windows|macOS{{Y}}|[https://github.com/xamarin/release-notes-archive/blob/master/release-notes/android/{{N}}<abbr title="It uses android-player/indexx86 9.md 0.6.5]64bit">*</abbr>|VirtualBox|Mid{{N}}|{{Y}} ||{{Y}} |<ref group=N4 name=BlissOSsupport></ref>|{{N}}<ref group=N4 name=Androidx86OSsupport></ref>
|-
|XePlayer|align! colspan=left|{{Icon|Windows}}10 |[httphttps://xeplayerdeveloper.android.com/ 6.0.10ndk/guides/abis Supported ABIs]|VirtualBox|High|{{✗}} ||{{✗}} ||{{✗}}
|-
|YouWavecolspan=2 | [https://web.archive.org/web/20180507120451/https://developer.android.com/ndk/guides/abis#sa armeabi]|aligncolspan=left8 |{{Icon|Windows}}armeabi and MIPS support deprecated in [[Compatibility layer|libndk translation layer]] version r16 and [https://youwaveandroid.googlesource.com/ 5platform/ndk/+/master/docs/Roadmap.11md#ndk-r17 removed in r17].<br/>But [[Compatibility layer|VirtualBox|Mid|{{✗}} ||{{✗}} ||{{✗}}libhoudini translation layer]] still supports it?
|-
!| colspan="8"2 | [https://developer.android.com/ndk/guides/abis#v7a armeabi-v7a]<br/><small>Supporting armeabi-v7a ABI is crucial for emulators due to compatibility and [[Preservation_projects|Mobile preservation]] reasons.<br/ > Older applications and games often rely on the [[Wikipedia:ARM_architecture_family|ARM32-bit (Cortex)]] architecture, which isn't used in newer hardware.</small>|?|{{Y}}<ref group=N4 name=BlueStacksABI>[https://support.bluestacks.com/hc/en-us/articles/360058929011-What-is-Application-Binary-Interface-ABI-in-BlueStacks-5 What is Application Binary Interface (ABI) in BlueStacks 5 ]</ref>|?|?|?|{{Y}}|?|?
|-
|LineageOScolspan=2 | [https://developer.android.com/ndk/guides/abis#arm64-v8a arm64-v8a]|align=left?|{{Icon|LinuxARMY}}<ref group=N4 name=BlueStacksABI></ref>|{{Y}}<ref group=N4 name=GooglePlayGamesABI>[https://konstakangdeveloper.android.com/ 18games/playgames/start#playbility-architecture Google Play Games ABI Architecture support].1 <small>(Raspberry Pi 3/4)</smallref>]|Not an emulator (actual AOSP)?|High?|{{Y}} |?|{{✓}} ||{{✓}}?
|-
| colspan=2 |[https://waydrodeveloper.android.idcom/index.html Waydroidndk/guides/abis#x86 x86]|align?|{{Y}}<ref group=leftN4 name=BlueStacksABI></ref>|{{Icon|LinuxARMY}}<ref group=N4 name=GooglePlayGamesABI></ref>|?|?|[https://waydro.id/#install git]{{Y}}|[https://emulation.gametechwiki.com/index.php/Compatibility_layer Not an emulator (wine-like approach)]?
|?
|{{✓}} ||{{✓}} ||{{✓}}
|-
| colspan=2 |[[Anbox]https://developer.android.com/ndk/guides/abis#86-64 x86_64]|align?|{{Y}}<ref group=leftN4 name=BlueStacksABI></ref>|{{IconY}}<ref group=N4 name=GooglePlayGamesABI></ref>|LinuxARM{{Y}}|?|{{Y}}[https://anboxdeveloper.android.iocom/games/ gitoptimize/64-bit#64-bit-emulator *]|Not an emulator (wine-like approach)?
|?
|{{✓}} ||{{✗}} ||{{✗}}
|-
! colspan=10 |Project Astoria[https://developer.android.com/develop/ui/views/graphics/opengl/about-opengl Supported APIs]|align-| colspan=left2 |{{Icon[https://registry.khronos.org/OpenGL/index_es.php#specs11 OpenGL ES 1.x]<br/><small>Supporting OpenGL ES 1.x is crucial for emulators due to compatibility and [[Preservation_projects|Win10Phone}}preservation]] reasons.</small>|Discontinued ($)?|Original?|Low?|{{✗}} ?|?|{{Y}} |?|{{✗}}?
|-
!| colspan="8"2 | [https://registry.khronos.org/OpenGL/index_es.php#specs31 OpenGL ES 3.x]<br/><small>The OpenGL ES 3.x APIs is backwards-compatible with the 2.x APIs which is crucial for emulators due to compatibility and [[Preservation_projects|preservation]] reasons.</small>|?|?|?|{{Y}}[https://youtu.be/tfq4MsxaHZw?t=923 *]|?|{{Y}}|?|Consoles?
|-
|LineageOS|aligncolspan=left|{{Icon|Switch}}2 |[https://switchrootregistry.khronos.org/ 15vulkan/#apispecs Vulkan 1.3]<br/><small>See [https://developer.1android.com/ndk/guides/graphics/android-baseline-profile Android Baseline 2022 profile] and also see [https://source.android.com/docs/core/graphics/implement-vulkan#versions Vulkan API versions for several Android releases].<br/>Vulkan releases are backward compatible with each other.|?|based of the Nvidia Shield TV build of LineageOS?|~?|{{✓}} ?|?|{{✓}} ?|?|{{✓}}?
|}
</div>
<references group=N4/>
==Enhancements==<references groupdiv style=N /"overflow-x:auto;width:100%"{|class="wikitable" style="text-align:center; vertical-align:middle;width:100%"|- style=Comparisons"font-weight:bold;"! colspan=2 | Name! Genymotion! Bluestacks! Google Play Games! Trinity! WSA! Android Studio! [[Recommended_linux_distros#Emulation_focused|BlissOS]]! [[Recommended_linux_distros#Emulation_focused|Android-x86]]|-|rowspan=6 | Post-Processing| [[Shader_Presets|Shader Chain]]| {{✗}}| {{✗}}| {{✗}}| {{✗}}| {{✗}}| {{✗}}| {{✗}}| {{✗}}|-| [[Shaders_and_filters|Filters]]| {{✗}}| {{✗}}| {{✗}}| {{✗}}| {{✗}}| {{~}}<ref group=;N3>Android Studio emulator [https://playdeveloper.googleandroid.com/googleplaygames Google Play Gamesstudio/run/managing-avds#skins supports lots of device frame and custom skin](similar to libretro overlay/bezels). You can get additional skins from various sources (e.g. [https:Not to be confused with the Android app of the same name, Google Play Games is a PC application that lets you browse, download, and play //github.com/mingchen/android-emulator-skins mingchen'''select mobile games''' on a Windows desktop or laptop. Besides enjoying selected s Android games on a PCEmulator Skins], you’ll have keyboard and mouse access, seamless sync across devices, and integration with Google Play Points[https://sourceforge. Google Play Games is not yet available for Mac. Currentlynet/projects/android-emulator-skins/files/ CREAL's AVD skins]), over 100 games are available across the beta regions but Google adding games also you can use buttons on a regular basisthese device frames.</ref>| {{✗}}| {{✗}}|-|[[Shaders_and_filters#AI-powered filters|AI-powered filter compatible]]<br/><small>([https://playwww.googlenvidia.com/googleplaygames#sectionen-us/geforce/news/gfecnt/nvidia-freestyle-ansel-enhancements-geforce-experience-faqs Google Play Games FAQarticle/ Freestyle])</refsmall>.| {{?}}| {{?}}| {{?}}| {{?}}| {{?}}| {{?}}| {{?}}| {{?}};Android x86|-| [[Wikipedia:An openCategory:Anti-source project that aims to port the Android operating system to x86aliasing_algorithms|Post-based netbooks. Comes with Google Play and libhoudini rendering AA]]<br/><small>(x86/ARM translation layer) installed. 3D acceleration works well both when installed directly on the machine as a local OS and also on VMware. VMware Player 15 supports emulating OpenGL ES 3 on the targetFXAA, TXAA and its performance is quite good. VirtualBox 3d support is poor and probably won't work. Android x86 is continually being improved and can be tried fairly painlessly through VMware. Genymotion is (or at least used to beMLAA/SMAA) a closed-source fork of Android x86, designed exclusively to be run on VirtualBox. If you're brave, you can also try installing it on your real computer if you want to erase your current OS or use another partition.</small>| {{✗}}| {{✗}}| {{✗}}| {{✗}}| {{✗}}| {{✗}}| {{✗}}| {{✗}}:;Bliss OS|-| [[Wikipedia::A fork of AndroidComparison_gallery_of_image_scaling_algorithms|Post-x86 created by BlissLabs named BlissOS keeps the Android-x86 project alive by supporting the latest Android versionsrendering scaling]]<br/><small>(Sharp bilinear, Lanczos and is pre[[Wikipedia:GPUOpen#FidelityFX_Super_Resolution|FSR 1]])</small>| {{✗}}| {{✗}}| {{✗}}| {{✗}}| {{✗}}| {{✗}}| {{✗}}| {{✗}}|-|[[High_dynamic_range#Inverse_tone_mapping|Inverse tone mapping compatible]]| {{?}}| {{?}}| {{?}}| {{?}}| {{?}}| {{?}}| {{?}}| {{?}}|-rooted by default using KernelSU. It can also run ARM64 apps using the Houdini ARM transition layer and includes 3 launchers| rowspan=5 | [https: Taskbar, Quickstep and Smart Dock//tasvideos.org/Emulatorresources/Features TAS features] ;| [[GenymotionWikipedia:Macro_(computer_science)|Macros/Scripts]]/[https://tasvideos.org/LuaScripting Lua]| {{?}}| {{Y}}[https:A closed-source Android emulator with hardware-accelerated 3D graphics and USB host support, available for Windows, macOS, and Linux//www. In its latest versions, it has pretty good compatibility with commercial gamesbluestacks. It's a commercial product though, aimed at software developers and QA teamscom/features/macros. You'll need to create an account and download the free nonhtml *]| {{?}}| {{✗}}| {{✗}}| {{?}}| {{?}}| {{?}}|-| Rewind| {{✗}}| {{✗}}| {{✗}}| {{✗}}| {{✗}}| {{✗}}| {{✗}}| {{✗}}|-| Fast-commercial use license. Except for the payForward/Turbo Speed| {{✗}}| {{✗}}| {{✗}}| {{✗}}| {{✗}}| {{✗}}| {{✗}}| {{✗}}|-to| Savestates| {{✗}}| {{✗}}| {{✗}}| {{✗}}| {{✗}}| {{✗}}| {{✗}}| {{✗}}|-remove "free for personal use" watermark on the screen, paid builds add features only useful for Android app developers| [https://tasvideos.org/Movies Movie recording/playback]| {{✗}}| {{✗}}| {{✗}}| {{✗}}| {{✗}}| {{✗}}| {{✗}}| {{✗}}|-;| rowspan=10 | Quality of life| [[BlueStacksSave_disk_space_for_ISOs#PlayStation_1|Streamable compression format]]:Also commercial with a free option (requires a Google account). It's less good than Genymotion and doesn't handle USB cable emulation. Previous versions used to come with an installer with adware, riddled with junk apps within the emulator and had a non-intuitive uninstaller, but that's no longer the case today. It includes Google Apps by default, though you'll need to install a file manager to copy game cache when loading your own .apk files.| {{✗}}| {{✗}}| {{✗}}| {{✗}}| {{✗}}| {{✗}}| {{✗}};MEmu| {{✗}}:A free Android emulator with very good accuracy, sometimes outperforming BlueStacks.|-| Per-Game Profiles;KMRE| {{?}}| {{Y}}[https:The official solution to run Android applications on computers with Chinese homegrown Phytium/KunPeng ARM processors and NeoKylin Linux operating system/support.bluestacks. KMRE is not designed with thirdcom/hc/en-us/articles/360055522292-How-to-party applications outside its app store and in fact, force installing thirduse-party apps breaks older versions of KMRE. It's the go-to solution if you are restricted to working with these kinds of computers due to national security reasons.Game-controls-menu-on-BlueStacks-5 *]| {{?}}| {{?}};LDPlayer| {{?}}:An Android emulator also with good accuracy. When testing games alongside Nox, LDPlayer shows better performance/compatibility with games.| {{?}}| {{?}};Droid4x| {{?}}Has good accuracy but forcefully uninstalls VirtualBox, so it cannot co|-exist with Genymotion and Xamarin. It's not recommended because it will install hidden background services (xunlei.exe, and Thunder.exe, both by the Chinese company which developed Droid4x) that seed Chinese torrents constantly and are a pain to uninstall or deactivate (in case you've already fallen for it, use Revo Uninstaller).| Command Line Options;Andy OS| {{?}}:Not recommended because it will install a | {{Y}}[https://wwwold.reddit.com/r/emulationBlueStacks/comments/8rq4fm163yg7p/reminder_that_andyroid_mines_cryptocurrencycommand_line_options/ cryptocurrency miner*] on your system without asking or informing the user. Just like Genymotion| {{?}}| {{Y}}| {{?}}| {{?}}| {{?}}| {{?}}|-| On-Screen Display<br/><small>Showcases messages, controller input state which is useful for speedrunners, Andy OS uses VirtualBoxperformance data, but with a twist: if it detects an installed VirtualBox during installationactive settings, '''it will delete it''' and will refuse to workvarious notifications.</small>| {{?}}| {{?}}| {{?}}| {{?}}| {{?}}| {{?}}| {{?}}| {{?}};DuOS|-:Not to be confused with a [http://ds| Built-duos.blogspot.com/ similarlyin On-named Nintendo DS emulator] by Roor, it is a relative newcomer to the Android emulation market, made by American Megatrends, i.e., the very same people behind the BIOSScreen Control<br/UEFI firmware your PC may be using><small>Simulating touch input on display via keyboard or gamepad. Emulation This QoL enhancement is modest at best, with crucial for lots of touch input exclusive games and .<br/>Also you can use third party apps such as [[DraStichttps://github.com/Shyri/TouchMapper TouchMapper]] struggling on lower-end hardware. And to top it all off, it isn't free eitherfor this.</small>| {{?}};Google Chrome:Can open APK files using the ARC Welder extension, though their emulation on PC is average at best. Here's a | {{Y}}[httphttps://docssupport.googlebluestacks.com/spreadsheetshc/den-us/1iIbxaftAu_ho5rv9fUlXSLTzwU6MbKOldsWXyrYiyo8articles/edit#gid=0 compatibility list360058928871 *] and a | {{?}}| {{N}}| {{?}}[https://wwwold.reddit.com/r/chromeapks dedicated subredditWSA/comments/z62m2v/how_do_i_remap_key_to_screen_presses_for_gaming/ *]| {{?}}| {{?}}| {{?}}|-| [[Compatibility_layer|Built-in translation layer]]| {{✗}}<ref group=N3>You need to manually install libhoudini translation layer on guest system for Genymotion. See [[Compatibility layer]] page. Google has announced </ref>| {{✓}}| {{✓}}[httphttps://arstechnicadeveloper.android.com/gadgetsgames/2016playgames/05/thestart#playbility-playarchitecture *]| {{✓}}| {{?}}| {{?}}| {{Y}}<ref group=N3>BlissOS supports out-storeof-comespackage translation layer [https://blissos.org/ (See 'Bliss OS Variations-to>Native-chrome-os-but-not-the-way-we-were-expecting/ Play Store for Chrome OSbridge' section)], but it works on a different "container" technology that is embedded in the Chrome OS. In addition, Google has Also see [httphttps://blogdocs.chromiumblissos.org/2016/08knowledgebase/fromfrequently-chromeasked-appsquestions/hardware-to-web.html discontinued Google Chrome apps on PCcompatibility this page].</ref> ;Windroy:(Without the 'e' suffix) | {{~}}<ref group=N3>libhoudini is a fast Android emulator that does not rely on VirtualBox or any similar technology. It isn't accurate, though. While the Google Play store can be installed bundled with some tinkeringAndroid-x86, not many games can be installed (due there's a script under /system/bin named "enable_houdini" which tries to not faking device names) download it and will spawn multiple harmless-yet-annoying app_processinstall from two different urls.exe crashes. The official site So, if these sources are offline, manual installation is down since July 2016necessary;WindroyeSee [https:(With the 'e' suffix) uses VirtualBox, but still offers better performance than BlueStacks//groups.google. The Play Store is installed by default and has no stability issues found in Windroycom/g/android-x86/c/tXyfFZ7xeTw this page] for more information.</ref>|-;| [[AnboxHypervisors|Built-in VM]]:A project that aims | {{~}}<ref group=N3>Exclusive to run Android applications on Ubuntu distributions"with VirtualBox" builds.</ref>| {{Y}}<br/><small>Multiple<ref group=N3>BlueStacks uses QEMU (before v2. It is in alpha state and only known to work on Ubuntu 165), VirtualBox (after v2.045). Anbox requires custom kernel modules to run becauseAlso as mentioned in "Before diving in" section, unlike other emulators which emulate the whole Linux kernel, this one uses the host systemBlueStacks '''supports'''s Linux kernel directlyHyper-V if you are using BlueStacks v4 Hyper-V builds or v5.20+ versions.</ref>| {{Y}}<br/><small>Hyper-V</small>;Shashlik| {{Y}}<br/><small>[https:A project by KDE that aims to run Android applications on Linux using KDE5 and Qt5 technology//github.com/TrinityEmulator/TrinityEmulator#4-code-organization QEMU 5. The project is in infancy state 0]<ref group=N3>Also supports Hyper-V and only known to run on latest Kubuntu versionsobsolete HAXM for hardware acceleration. It lacks ARM processor emulation, so not many games will run. It is, however, known to play </ref>| {{Y}}<br/><small>Hyper-V</small>| {{Y}}<br/><small>[https://wwwdeveloper.youtubeandroid.com/watch?vstudio/intro/update#recommended QEMU]<ref group=9SC6c_ih_Ac Flappy Bird] and can show N3>Also supports [https://wwwdeveloper.youtubeandroid.com/watch?v=ju_R8ftiIp4 Spotify's login screenstudio/run/emulator-acceleration#vm-windows-aehd AEHD]. It uses a modified version of , [[QEMU]] to emulate the Android operating system. The last major update was in March 2016 and seems to be abandonedhttps://developer;Xamarin Android Player:A newcomer to the Android emulation marketandroid. Not much is known about this because it required a minimum $25com/studio/run/month subscription to main Xamarin products. The main Xamarin products were emulator-acceleration#choose-windows-hypervisor WHPX for Windows] and [https://blogdeveloper.xamarinandroid.com/xamarinstudio/run/emulator-foracceleration#vm-all made available linux KVM for freeLinux] after the purchase by Microsoft, but Xamarin Android Player was discontinuedfor hardware acceleration.</ref></small>| {{✗}};VMOS| {{✗}}|-:A program that runs another copy of Android on the current Android system, which would be useful for running multiple copies of the same application simultaneously, running applications that rely on older| File Sharing<br/newer versions of Android, testing out different Android system variations, or safely executing operations/applications that are likely ><small>Similar to harm the system and"Shared Folder" enhancement for [[Hypervisors#Type_2_hypervisors|Type-2 hypervisors]].</or user data.small>| {{?}};Project Astoria:A Microsoft-developed Android emulator | {{~}}<ref group=N3>Only for Windows 10 Mobile included in several insider previews. It could run media type files, it supports [https://wwwsupport.redditbluestacks.com/rhc/windowsphoneen-us/commentsarticles/3gaoct/android_apps_that_work_on_win10_right_now/ a few applications360055684992-How-to-use-the-Media-Manager-on-BlueStacks-5 media file sharing via Media Manager], though apps that required Google Play Services did not run or had issues. This project was reportedly </ref>| {{?}}| {{?}}| {{?}}| {{?}}| {{?}}| {{?}}|-| Big Picture Mode| {{?}}| {{?}}| {{?}}| {{N}}| {{?}}| {{?}}| {{?}}| {{?}}|-| Multiple instances and instance manager| {{?}}| {{Y}}[httphttps://www.windowscentralbluestacks.com/microsoftsfeatures/multi-project-astoria-delayed discontinuedinstance.html 1] in November 2015, and [httphttps://wwwsupport.winbetabluestacks.orgcom/hc/en-us/newsarticles/microsoft360052834092-How-to-create-and-confirmsmanage-theinstances-deathusing-ofthe-projectMulti-astoriainstance-focusingManager-on-otherBlueStacks-bridges-instead its cancellation was confirmed5 2] on February 2016, so the emulator is not included in more recent versions of Windows 10 Mobile| {{N}}[https://youtu.be/2KEaPQpfzkQ?t=422 *]| {{N}}| {{?}}| {{?}}| {{?}}| {{?}}|-| rowspan==Emulation issues==2 | Misc| [[Wikipedia:Variable_refresh_rate|Variable Refresh Rate compatible]]| {{?}}| {{N}}| {{?}}| {{?}}| {{?}}| {{?}}| {{?}}===Google apps===| {{?}}Android is open|-source| Debug features</br><small>adb support, but the Google Play Store has to be licensed from Google in order to incorporate it into a build, including Play Services and many other Google apps[https://developer. That often means developers pay a fee that can trickle back to the user in some form (either through adware, privacy-invading trackers, or by selling the emulator as a commercial product)android. Custom ROMs for real Android devices on Android 4 and earlier used to bundle the Google Play Storecom/agi AGI support], but this changed integration with newer versionsIDE etc. The new method is to install a custom ROM and then install "GApps" through another service like </small>| {{?}}| {{~}}[https://opengappssupport.bluestacks.orgcom/hc/en-us/articles/ 360053245871-How-to-use-the Open GApps Project-BlueStacks-5-Settings-menu#%E2%80%9C6%E2%80%9D *]| {{Y}}[https://developer.android.com/games/playgames/pg-emulator *]| {{?}}| {{?}}| {{Y}}| {{?}}| {{?}}|}</div><references group=N3/>
==PlayStation Mobile=Architectural differences===Many games often optimize and compile specifically for ARM processors, which prevents them from being executable on x86 CPUs, even when using a project like Android-x86. Some emulators, like BlueStacks, have ARM emulation by default; in others, like Genymotion, it is possible to install an ARM emulator manually (though only on older versions, as such functionality is broken in newer releases). ===Conflict===Many emulators like to uninstall each other for some reason. Droid4x, Andyroid, Genymotion, and Xamarin cannot co-exist on the same machine without modifying their installers, which can be a problem if one game works on only one of these emulators but other games do not. ===Antitamper protection===In order to reduce cheating, many games refuse to run if they discover that the device has been rooted. If the emulator comes rooted by default, it must be manually unrooted before the game can be played. The rooting method for modern devices is Magisk, which installs itself in the bootloader instead of the system partition, which makes it harder to detect. Some games take more aggressive measures to detect the presence of Custom ROMs (unofficial firmware) or Android emulators (like the ones listed on this page) in a variety of ways, such as checking for the existence or absence of system files in order to prevent the game from running in any unverified environments. These games are very difficult or plain impossible to play on emulators without resorting to cracked versions of the games. ===Android-based Operating Systems===There are many [[wikipedia:Fork_(software_development)|forks]] of Android; some of these go beyond a custom UI and are instead entirely new OSes that use the Android code in addition to writing their own code, such as Amazon's Fire OS; in some cases these come as compatibility layers on top of an otherwise unrelated OS, such as Windows Subsystem for Android. Depending on how much (and what) new code, features, and APIs were added, will determine the effects they will have on Android emulation but if one thing is for sure, these forks are (most likely) going to cause some emulation issues. ==Emulator Specific Issues=====BlueStacks===* '''Can't root the device:'''  The latest Kingroot's .apk will do the job when loaded inside BlueStacks. It's that simple. Alternatively, you could use Universal [[BlueStacks]] Rooting Software on an existing BlueStacks installation. Before opening it, go to the folder where BlueStacks is installed under Program Files, and run "HD-Quit.exe" once.  Then, from the extracted "BlueStacks RootEZ 32_64", open as administrator "BlueStacks RootEZ.exe". Click "Automatic Detect from Installed Bluestacks", enable "Enlarge System (Root.fs) Size to 400MB", and click "I'm ready for Step 1". A command-line window should appear. Now just wait until "Preparing Complete" appears. Then, click "Go for Step 2" and wait until "Rooting is Complete" appears.  Close the application, and open the "output" folder in the same directory as the extracted application. You should find a newly generated "Root.fs" file. You can use it to replace the existing one under "%programdata%\BlueStacks\Android" (Press Windows+R and go there), but it's recommended to keep a backup of the original in case the new one causes Bluestacks to hang in the loading screen for more than a few minutes.  The package also includes Nova Explorer and Root Launcher. You may verify the rooting status with the "Root Checker" app from Google Play. Considering some apps check for Google Play services for online checks, you can also install "Modded Google Play Store", "[https://www.luckypatchers.com/ Lucky Patcher]" and "Magisk". ===Andyroid===* '''Unable To Launch VM Process:'''  On the taskbar, right-click Andyroid's notification icon, and choose Settings, Advanced, Set Andy Protocol. Type "tcp" and confirm, then launch Andyroid. ===Android-x86===* '''3D Support is broken on VMWare when using newer kernels:''' Kernels > 4.14 with version 8.1 break 3d acceleration in VMWare (see https://groups.google.com/forum/#!searchin/android-x86/4.9%7Csort:date/android-x86/wB65vJnuJiI/ytJaWYWUBwAJ). Use kernel 4.9 with 8.1 instead. * '''Setting resolution in VMWare''' Pass in a kernel option to grub when booting. Select the boot entry and then press 'e' to edit it, and then 'e' to edit again. Add the kernel option here. For example, to use a video resolution of 1920x1080, add 'video=1920x1080'. Press return to save the changes (for this boot session only), and 'b' to boot (the keys to edit and boot may be different depending on your grub version, there are usually instructions on the grub screen for the requisite keys) ===KMRE===* '''Installing third-party apks'''Installing third-party apks requires a dedicated installer <code>kmre-apk-installer</code>. It could be acquired by command <code>sudo apt update && sudo apt install kmre-apk-installer</code>. Notice that KMRE is still not designed with third-party apps in mind. Installing third-party apps may result in abnormal behaviors of KMRE such as unable to start & stop itself on demand due to clogged-up background processes of third-party apps. Installing apks inside KMRE is specifically filtered out by KMRE. * '''Receiving a notice that the mobile environment is not running while trying to install third-party apps'''Go to app store - mobile apps to trigger the startup process of KMRE. You can see a startup notice in the bottom right corner on the desktop while it's starting up. * '''Accessing Android system settings'''Execute command <code>startapp com.android.settings</code> in the terminal. Notice that changing system settings is very likely to break KMRE.* '''Accessing files of Android'''Files in <code>/storage/emulated/0</code> are mapped to <code>/var/lib/kmre/data/kmre-1000-${LOGNAME}</code>. '''Notice that this path contains a hard link to <code>/home/${LOGNAMEMain|PlayStation_Mobile}</code>. KMRE will filter out file deletion, but not creation and modification. Improper file management in Android could result in data loss in host machine.''' As KMRE is not really an emulator/hypervisor, the <code>/</code> and other paths such as <code>/sys</code> on Android doesn't have mappings, but some paths are mapped to <code>/var/lib/kmre/kmre-1000-${LOGNAME}</code>. ==GM Android-based==Placeholder for General Motors's Android Automotive OS and their [https://developer.gm.com/app-gallery App Gallery].
==Android consoles==
Because it's possible to fork and create your own Android-based OS, many developers have used Android to power their own commercial consoles. However, as mentioned before, just because it uses Android as a base does not mean they will all work correctly on a standard Android emulator, as they may require specific hardware setup, extra non-standard APIs or frameworks provided by the OS of the console, or extra authentication that relies on the services bundled with the console.
'''Note: [[Main_Page#Mobile_DevicesSmart_TV_emulators|Media Smart TVs and smart TV boxes/digital media players/media boxes]] (e.g. ChromeCast with Google TV, Amazon Fire TV) are not consoles, despite some of them are able to run video games. The distinction is simple: If a device is not designed with gaming as its sole or main purpose, then it's not an Android console. Please do not add [[Home_Media_Player|Home media players]] or general Android devices that can play video games, such as [[Main_Page#Mobile_Devices|Media boxes]], [[Smart_TV_emulators|Smart TVsand smart TV boxes/digital media players/media boxes]], etc. to this section.'''<div style="overflow-x:auto;width:100%">{| class="wikitable" style="text-align:center;width:100%"
! scope="col"|Name
! scope="col"|[[MAME]] support
|
|-
|[[GPD XD Devices/XD+|GPD XD / XD+]]
|None
|None
|A foldable handheld console manufactured by Gamepad Digital (GPD).
|-
|LeapFrog Epic
|None
|None
|
|-
|LC Smart Pandora TV Box
|-
|}
</div>
 
 
==GM Android-based==
Some General Motors cars are equipped with an in-car entertainment system running on Android.
 
[https://developer.gm.com/app-gallery App Gallery].
 
==Emulation issues==
===Google apps===
Android is open-source, but the Google Play Store has to be licensed from Google in order to incorporate it into a build, including Play Services and many other Google apps. That often means developers pay a fee that can trickle back to the user in some form (either through adware, privacy-invading trackers, or by selling the emulator as a commercial product). Custom ROMs for real Android devices on Android 4 and earlier used to bundle the Google Play Store, but this changed with newer versions. The new method is to install a custom ROM and then install "GApps" through another service like [https://opengapps.org/ the Open GApps Project].
 
===Architectural differences===
Many games often optimize and compile specifically for ARM processors, which prevents them from being executable on x86 CPUs, even when using a project like Android-x86. Some emulators, like BlueStacks, have ARM translation layer by default; in others, like Genymotion, it is possible to install an ARM translation layer manually. See [[#Hardware features]] supported ABI section and [[#Enhancements]] built-in translation layer section for more information.
 
===Conflict===
Many emulators like to uninstall each other for some reason. Droid4x, Andyroid, Genymotion, and Xamarin cannot co-exist on the same machine without modifying their installers, which can be a problem if one game works on only one of these emulators but other games do not. Also keep in mind that you should turn off Hyper-V windows feature if [[Hypervisors|Type-2 hypervisor]] used for emulator backend due to [[Hypervisors#Hyper-V_feature_conflict_issue|conflict issue]], although some emulators like BlueStacks provide special Hyper-V build for this.
 
===Antitamper protection===
In order to reduce cheating, many games refuse to run if they discover that the device has been rooted. If the emulator comes rooted by default, it must be manually unrooted before the game can be played. The rooting method for modern devices is Magisk, which installs itself in the bootloader instead of the system partition, which makes it harder to detect.
 
Some games take more aggressive measures to detect the presence of Custom ROMs (unofficial firmware) or Android emulators (like the ones listed on this page) in a variety of ways, such as checking for the existence or absence of system files in order to prevent the game from running in any unverified environments. These games are very difficult or plain impossible to play on emulators without resorting to cracked versions of the games.
 
===Android-based Operating Systems===
There are many [[wikipedia:Fork_(software_development)|forks]] of Android; some of these go beyond a custom UI and are instead entirely new OSes that use the Android code in addition to writing their own code, such as Amazon's Fire OS; in some cases these come as compatibility layers on top of an otherwise unrelated OS, such as Windows Subsystem for Android. Depending on how much (and what) new code, features, and APIs were added, will determine the effects they will have on Android emulation but if one thing is for sure, these forks are (most likely) going to cause some emulation issues.
 
===Emulator Specific Issues===
====BlueStacks====
* '''Can't root the device:'''
 
The latest Kingroot's .apk will do the job when loaded inside BlueStacks. It's that simple.
 
Alternatively, you could use Universal [[BlueStacks]] Rooting Software on an existing BlueStacks installation. Before opening it, go to the folder where BlueStacks is installed under Program Files, and run "HD-Quit.exe" once.
 
Then, from the extracted "BlueStacks RootEZ 32_64", open as administrator "BlueStacks RootEZ.exe". Click "Automatic Detect from Installed Bluestacks", enable "Enlarge System (Root.fs) Size to 400MB", and click "I'm ready for Step 1". A command-line window should appear. Now just wait until "Preparing Complete" appears. Then, click "Go for Step 2" and wait until "Rooting is Complete" appears.
 
Close the application, and open the "output" folder in the same directory as the extracted application. You should find a newly generated "Root.fs" file. You can use it to replace the existing one under "%programdata%\BlueStacks\Android" (Press Windows+R and go there), but it's recommended to keep a backup of the original in case the new one causes Bluestacks to hang in the loading screen for more than a few minutes.
 
The package also includes Nova Explorer and Root Launcher. You may verify the rooting status with the "Root Checker" app from Google Play. Considering some apps check for Google Play services for online checks, you can also install "Modded Google Play Store", "[https://www.luckypatchers.com/ Lucky Patcher]" and "Magisk".
 
====Andyroid====
* '''Unable To Launch VM Process:'''
 
On the taskbar, right-click Andyroid's notification icon, and choose Settings, Advanced, Set Andy Protocol. Type "tcp" and confirm, then launch Andyroid.
 
====Android-x86====
* '''3D Support is broken on VMWare when using newer kernels:'''
 
Kernels > 4.14 with version 8.1 break 3d acceleration in VMWare (see https://groups.google.com/forum/#!searchin/android-x86/4.9%7Csort:date/android-x86/wB65vJnuJiI/ytJaWYWUBwAJ). Use kernel 4.9 with 8.1 instead.
 
* '''Setting resolution in VMWare'''
 
Pass in a kernel option to grub when booting. Select the boot entry and then press 'e' to edit it, and then 'e' to edit again. Add the kernel option here. For example, to use a video resolution of 1920x1080, add 'video=1920x1080'. Press return to save the changes (for this boot session only), and 'b' to boot (the keys to edit and boot may be different depending on your grub version, there are usually instructions on the grub screen for the requisite keys)
 
====KMRE====
* '''Installing third-party apks'''
Installing third-party apks requires a dedicated installer <code>kmre-apk-installer</code>. It could be acquired by command <code>sudo apt update && sudo apt install kmre-apk-installer</code>.
 
Notice that KMRE is still not designed with third-party apps in mind. Installing third-party apps may result in abnormal behaviors of KMRE such as unable to start & stop itself on demand due to clogged-up background processes of third-party apps.
 
Installing apks inside KMRE is specifically filtered out unless the application running is upgrading itself.
 
* '''Receiving a notice that the mobile environment is not running while trying to install third-party apps'''
Go to app store - mobile apps to trigger the startup process of KMRE. You can see a startup notice in the bottom right corner on the desktop while it's starting up.
 
* '''Accessing Android system settings'''
Execute command <code>startapp com.android.settings</code> in the terminal. Notice that changing system settings is very likely to break KMRE.
* '''Accessing files of Android'''
Files in <code>/storage/emulated/0</code> are mapped to <code>/var/lib/kmre/data/kmre-1000-${LOGNAME}</code>.
 
'''Notice that this path contains a hard link to <code>/home</code>. KMRE will filter out file deletion, but not creation and modification. Improper file management in Android could result in data loss in host machine.'''
 
As KMRE is not really an emulator/hypervisor, the <code>/</code> and other paths such as <code>/sys</code> on Android doesn't have mappings, but some paths are mapped to <code>/var/lib/kmre/kmre-1000-${LOGNAME}</code>.
==See also==
* [[Emulators on Android]] - Various emulators on Android OS
==External links==*[[Wikipedia:Comparison_of_mobile_operating_systems|Comparison of mobile operating systems]]*[[Wikipedia:Android_version_history|Android version history]], [https://developer.android.com/topic/performance/baselineprofiles/overview Android Baseline profiles]*[https://developer.android.com/ Android Developer]*[https://xdaforums.com/t/list-of-devices-armv7-armv6-armv5.1596800/ XDAForums - List of devices: ARMv7, ARMv6, ARMv5]*[[Wikipedia:Comparison_of_high-definition_smartphone_displays#720p_by_1280_.28HD_ready.29|Early Android devices with OLED and HD Ready display]] [[Category:Mobiles]|*][[Category:LinuxAndroid-based|*]]
[[Category:Android emulators|*]]
[[Category:Operating systems|*]][[Category:Mobile Operating Systems|*]][[Category:Various Emulation]]---- {{NEL}}
==Notes==
<references group=N />
10,938
edits

Navigation menu