Changes

Jump to navigation Jump to search

Android emulators

1,840 bytes added, 26 April
no edit summary
|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,
;*To run Android apps on your computer, most of these 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.
;*[[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.
;*There are also [[compatibility layers]] such as Waydroid and [[Anbox]] for running android applications on ARM and x86 devices but these projects kinda negligible due to their compatibility levels.
;*Tons of bloated, obsolete or non-active other Android "emulatoremulators" 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
|-
! colspan="10"|PC / x86
|-
|[[BlueStacks]]
|align=left|{{Icon|Windows|macOS}}
|[https://support.bluestacks.com/hc/en-us/sections/360012290292-Release-Notes {{BlueStacksVer}}]
|{{~}}
|{{~}}
|[https://support.bluestacks.com/hc/en-us/articles/4413818315789-Games-playable-on-different-Android-versions-on-BlueStacks-5 ?]
|{{✗}} ||{{✓}} ||{{~}}<ref group=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 '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>
|-
|[[Genymotion]]
||[https://github.com/riverar/wsa-app-compatibility#support-tables 66%<br/><small>368 out of 558 reported titles</small>]
|?
|{{~}} [https://learn.microsoft.com/en-us/windows/android/wsa/ *] ||{{~}}
|-
|[https://trinityemulator.github.io/ Trinity]
|?
|<span title="Source-available"><sup>{{~}}</sup></span> ||{{✓}} ||{{~}}
|-
|[[BlueStacks]]
|align=left|{{Icon|Windows|macOS}}
|[https://support.bluestacks.com/hc/en-us/sections/360012290292-Release-Notes {{BlueStacksVer}}]
|{{~}}
|{{~}}
|[https://support.bluestacks.com/hc/en-us/articles/4413818315789-Games-playable-on-different-Android-versions-on-BlueStacks-5 ?]
|{{✗}} ||{{✓}} ||{{✗}}<ref group=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
|{{✗}} ||{{✓}} ||{{✗}}<ref group=N2 name=Bloatware></ref>
|}
</div>
<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's not designed for gaming but it has decent software compatibility with commercial games] especially with latest versions of the games. It's a commercial product though, aimed at software developers and QA teams. Youand 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|service 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 across the for beta regions 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]]]]
;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
==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
| {{✓}}
| {{✓}}[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://www.bluestacks.com/multi-touch.html][https://www.bluestacks.com/blog/bluestacks-exclusives/bluestacks-multi-touch-support-en.html]
| {{?}}[https://support.google.com/googleplay/thread/249633800/lack-of-multi-touch-support-on-play-games-beta?hl=en]
| {{?}}
| {{?}}
! colspan=10 | [https://developer.android.com/develop/ui/views/graphics/opengl/about-opengl Supported APIs]
|-
| colspan=2 | [https://registry.khronos.org/OpenGL/index_es.php#specs10 specs11 OpenGL ES 1.0x]<br/><small>Supporting OpenGL ES 1.x is crucial for emulators due to compatibility and [[Preservation_projects|preservation]] reasons.</small>
|?
|?
|?
|-
| colspan=2 | [https://registry.khronos.org/OpenGL/index_es.php#specs31 OpenGL ES 3.1x]<br/><small>The OpenGL ES 3.x API APIs is backwards-compatible with the 2.x API APIs which is crucial for emulators due to compatibility and [[Preservation_projects|preservation]] reasons..</small>
|?
|?
|?
|-
| colspan=2 | [https://registry.khronos.org/vulkan/#vulkan1.1 apispecs Vulkan 1.13]<br/><small>It's possible to use Vulkan 1.1 thanks to See [https://developer.android.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/small>Vulkan releases are backward compatible with each other.
|?
|?
|?
|}
</div>
<references group=N4/>
==Enhancements==
<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
! [[Recommended_linux_distros#Emulation_focused|Android-x86]]
|-
|rowspan=4 6 | Post-Processing
| [[Shader_Presets|Shader Chain]]
| {{✗}}
| {{✗}}
| {{✗}}
| {{Y~}}<ref group=N3>Android Studio emulator [https://developer.android.com/studio/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://github.com/mingchen/android-emulator-skins mingchen's Android Emulator Skins], [https://sourceforge.net/projects/android-emulator-skins/files/ CREAL's AVD skins]), also you can use buttons on these device frames.</ref>
| {{✗}}
| {{✗}}
|-
|[[Shaders_and_filters#AI-powered filters|AI-powered filter compatible]]<br/><small>([https://www.nvidia.com/en-us/geforce/news/gfecnt/nvidia-freestyle-ansel-enhancements-geforce-experience-article/ Freestyle])</small>
| {{?}}
| {{?}}
| {{?}}
| {{?}}
| {{?}}
| {{?}}
| {{?}}
| {{?}}
|-
| [[Wikipedia:Category:Anti-aliasing_algorithms|Post-rendering AA]]<br/><small>(FXAA, TXAA and MLAA/SMAA)</small>
| {{✗}}
|-
| [[Wikipedia:Comparison_gallery_of_image_scaling_algorithms|Post-rendering scaling]]<br/><small>(Sharp bilinear, Lanczos and [[Wikipedia:GPUOpen#FidelityFX_Super_Resolution|FSR 1]])</small>
| {{✗}}
| {{✗}}
| {{✗}}
| {{✗}}
|-
|[[High_dynamic_range#Inverse_tone_mapping|Inverse tone mapping compatible]]
| {{?}}
| {{?}}
| {{?}}
| {{?}}
| {{?}}
| {{?}}
| {{?}}
| {{?}}
|-
| rowspan=5 | [https://tasvideos.org/Emulatorresources/Features TAS features]
| {{?}}
|-
| rowspan=1 2 | Misc| [[Wikipedia:Variable_refresh_rate|Variable Refresh Rate compatible]]| {{?}}| {{N}}| {{?}}| {{?}}| {{?}}| {{?}}| {{?}}| {{?}}|-
| Debug features</br><small>adb support, [https://developer.android.com/agi AGI support], integration with IDE etc.</small>
| {{?}}
| {{?}}
|}
</div>
<references group=N3/>
 
==PlayStation Mobile==
{{Main|PlayStation_Mobile}}
==Android consoles==
'''Note: [[Smart_TV_emulators|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 [[Smart_TV_emulators|Smart TVs and 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
|-
|}
[[Category:Hardware Emulation lists]]</div> 
==GM Android-based==
Some Generic Motor branded automobiles General Motors cars are equipped with onboard computer an in-car entertainment system powered by running on Android system.
[https://developer.gm.com/app-gallery App Gallery].
*[[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,935
edits

Navigation menu