Android emulators: Difference between revisions
No edit summary |
|||
| Line 6: | Line 6: | ||
Android is like a Linux distribution in that it uses the Linux kernel to facilitate communication with the hardware and manage processes on the system. Unfortunately, the similarities end there, as Android uses an entirely different toolset from standard Linux distributions and no support is given for running it on PCs. (Software development on Android is also nothing like Linux development as apps are compiled into architecture-specific <code>APK</code>s via Java which, like IPA files on [[iOS emulators|iOS]], are specially designed Zip files. They may be occasionally coupled with <code>OBB</code> files, see [[Copy_protection#Bypassing_Copy_Protection]] section for information about APK+DATA and copy protection situation on Android). While Android can technically run Linux binaries, doing so requires superuser privileges that Android does not provide by default. For many devices, you can expect to see a custom ROM that has an integrated su binary (or a means to install it easily, such as a custom recovery), but not all devices have one. | Android is like a Linux distribution in that it uses the Linux kernel to facilitate communication with the hardware and manage processes on the system. Unfortunately, the similarities end there, as Android uses an entirely different toolset from standard Linux distributions and no support is given for running it on PCs. (Software development on Android is also nothing like Linux development as apps are compiled into architecture-specific <code>APK</code>s via Java which, like IPA files on [[iOS emulators|iOS]], are specially designed Zip files. They may be occasionally coupled with <code>OBB</code> files, see [[Copy_protection#Bypassing_Copy_Protection]] section for information about APK+DATA and copy protection situation on Android). While Android can technically run Linux binaries, doing so requires superuser privileges that Android does not provide by default. For many devices, you can expect to see a custom ROM that has an integrated su binary (or a means to install it easily, such as a custom recovery), but not all devices have one. | ||
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= | 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="lower-alpha">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. | 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= | <references group="lower-alpha"/> | ||
==Before diving in== | ==Before diving in== | ||
| Line 20: | Line 20: | ||
==Emulators== | ==Emulators== | ||
{|class="wikitable" style="text-align:center;width:100%;" | {|class="wikitable" style="text-align:center;width:100%;" | ||
|+Before editing, review the [[Getting involved]] and [[Recommended emulators|Recommended]] pages. See [[Computer_specifications#Recommended_Specifications|system requirements]] page for performance demand of the emulators.<br | |+Before editing, review the [[Getting involved]] and [[Recommended emulators|Recommended]] pages. See [[Computer_specifications#Recommended_Specifications|system requirements]] page for performance demand of the emulators.<br>See tables for <span style="font-weight: bold; color: #CC0000; border: 1px solid #CC0000; padding: 2px;">[[#Enhancements|enhancements]], [[#Hardware_features|hardware features]], and [[#Android_consoles|Android consoles]]. Also see [[PlayStation Mobile]].</span><br>For more details such as [[licensing]], [[Source_code#Language_levels|programming language]], [[High_and_low-level_emulation|emulation method]], visit each emulator’s dedicated page. | ||
!Name | !Name | ||
!Platform(s) | !Platform(s) | ||
!Latest version | !Latest version | ||
!Active | |||
![[Licensing|License]] | |||
!Compatibility | !Compatibility | ||
![[Recommended Emulators|Recommended]] | ![[Recommended Emulators|Recommended]] | ||
|- | |- | ||
! colspan=" | ! colspan="7" |PC | ||
|- | |||
|ARCVM | |||
| align="left" |{{Icon|ChromeOS}} | |||
|N/A||{{Ya}}||{{Red}} {{License|Proprietary}} | |||
|?||{{~}} | |||
|- | |||
|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://developer.android.com/studio/ 4.0]||{{Ya}}||{{Red}} {{License|SA}} | |||
|?||{{~}} | |||
|- | |- | ||
|[[Genymotion]] | |[[Genymotion]] | ||
|align=left|{{Icon|Windows|Linux|macOS}} | | align="left" |{{Icon|Windows|Linux|macOS}} | ||
|[https://www.genymotion.com/download/ {{GenymotionVer}}] | |[https://www.genymotion.com/download/ {{GenymotionVer}}]||{{Ya}}||{{Red}} {{License|Proprietary}} | ||
| | |?||{{~}} | ||
|{{Red}} {{License|Proprietary}} | | |||
|- | |- | ||
|[https://play.google.com/googleplaygames Google Play Games] | |[https://play.google.com/googleplaygames Google Play Games] | ||
|align=left|{{Icon|Windows}} | | align="left" |{{Icon|Windows}} | ||
|[https://play.google.com/googleplaygames#section-system-requirements Beta]<br | |[https://play.google.com/googleplaygames#section-system-requirements Beta]<br>[https://developer.android.com/games/playgames/emulator Developer]||{{Ya}}||{{Red}} {{License|Proprietary}} | ||
|<small>[https://play.google.com/googleplaygames/exploregames Only for selected titles] (Beta build)<br | |<small>[https://play.google.com/googleplaygames/exploregames Only for selected titles] (Beta build)<br>? (Developer build)</small>||{{~}} | ||
|- | |- | ||
|[https:// | |[https://trinityemulator.github.io/ Trinity] | ||
|align=left|{{Icon|Windows}} | |align=left|{{Icon|Windows}} | ||
| | |[https://github.com/TrinityEmulator/TrinityEmulator/releases git]||{{~}}||{{Green}} {{License|GPLv2}} ({{License|Copyleft}}) | ||
| | |?||{{~}} | ||
|{{ | |||
|- | |- | ||
|[https://waydro.id/index.html Waydroid] | |[https://waydro.id/index.html Waydroid] | ||
|align=left|{{Icon|Linux}} | | align="left" |{{Icon|Linux|LinuxARM}} | ||
|[https://waydro.id/#install git]<br | |[https://waydro.id/#install git]<br>[https://github.com/casualsnek/waydroid_script Extras script]||{{Ya}}||{{Green}} {{License|GPLv3}} ({{License|Copyleft}}) | ||
| | |?||{{~}} | ||
|{{Green}} {{License|GPLv3}} ({{License|Copyleft}}) ||{{ | |- | ||
|[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 WSL2 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]||{{~|link=https://learn.microsoft.com/en-us/windows/android/wsa/}}||{{Dunno}} | |||
|{{Emulator compatibility|link=https://github.com/riverar/wsa-app-compatibility#support-tables|368|558}}||{{~}} | |||
|- | |- | ||
|[ | |[[Anbox]] | ||
|align=left|{{Icon| | |align=left|{{Icon|Linux|LinuxARM}} | ||
|[https:// | |[https://docs.anbox.io/userguide/install.html git]||{{Na}}||{{Green}} {{License|GPLv3}} ({{License|Copyleft}}) | ||
| | |?||{{Na}} | ||
|{{Green}} {{License| | |||
|- | |- | ||
| | |Andy OS | ||
|align=left|{{Icon| | | align="left" |{{Icon|Windows|macOS}} | ||
| | |[https://andyroid.net/ 0.47.226.1096.26]||{{Ya}}||{{Red}} {{License|Proprietary}} | ||
| | |?||{{Na}}<ref group="lower-alpha" name=Bloatware></ref> | ||
|{{Red}} {{License|Proprietary}} | | |||
|- | |- | ||
| | |ARC Welder<br><small>(Google Chrome)</small> | ||
|align=left|{{Icon|Windows|Linux}} | | align="left" |{{Icon|Windows|Linux|macOS|Web}} | ||
|[https://developer. | |[https://developer.chrome.com/apps/getstarted_arc ARC 50.5021.602.0]||{{Na}}||{{Red}} {{License|Proprietary}} | ||
| | |?||{{Na}} | ||
|{{Red}} {{License| | |||
|- | |- | ||
| | |ARChon<br><small>(Google Chrome)</small> | ||
|align=left|{{Icon|Linux}} | | align="left" |{{Icon|Windows|Linux|macOS|Web}} | ||
|[https:// | |[https://archon-runtime.github.io/ ARC 41.4410.238.0]||{{Na}}||{{Red}} {{License|SA}} | ||
| | |?||{{Na}} | ||
|{{ | |||
|- | |- | ||
|[[BlueStacks]] | |[[BlueStacks]] | ||
|align=left|{{Icon|Windows|macOS}} | | align="left" |{{Icon|Windows|macOS}} | ||
|[https://support.bluestacks.com/hc/en-us/sections/360012290292-Release-Notes {{BlueStacksVer}}] | |[https://support.bluestacks.com/hc/en-us/sections/360012290292-Release-Notes {{BlueStacksVer}}]||{{Ya}}||{{Red}} {{License|Proprietary}} | ||
|[https://support.bluestacks.com/hc/en-us/articles/4413818315789-Games-playable-on-different-Android-versions-on-BlueStacks-5 ?] | |[https://support.bluestacks.com/hc/en-us/articles/4413818315789-Games-playable-on-different-Android-versions-on-BlueStacks-5 ?]||{{Na}}<ref group="lower-alpha" 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 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> | ||
|- | |- | ||
| | |Droid4X | ||
|align=left|{{Icon|Windows|macOS}} | | align="left" |{{Icon|Windows|macOS}} | ||
|[https:// | |[https://droid4x.cc/ 0.10.7]||{{Na}}||{{Red}} {{License|Proprietary}} | ||
| | |?||{{Na}} | ||
|{{Red}} {{License|Proprietary}} | | |||
|- | |- | ||
| | |KoPlayer | ||
|align=left|{{Icon|Windows}} | | align="left" |{{Icon|Windows}} | ||
|[https:// | |[https://koplayerpc.com/ 2.0.0]||{{Na}}||{{Red}} {{License|Proprietary}} | ||
| | |?||{{Na}} | ||
|{{Red}} {{License|Proprietary}} | | |||
|- | |- | ||
| | |LDPlayer<ref group="lower-alpha">LDShop and LDPlayer's cloud backend suffered a major data breach exposing user screens and payment sessions, while the bundled Sogou keyboard has been flagged for telemetry that logs plaintext keystrokes. ([https://x.com/nte_wl/status/2054627592054153273 see tweet)]</ref> | ||
|align=left|{{Icon|Windows}} | | align="left" |{{Icon|Windows}} | ||
|[https:// | |[https://en.ldplayer.net/ 4.0.50.3]||{{Ya}}||{{Red}} {{License|Proprietary}} | ||
| | |?||{{Na}}<ref group="lower-alpha" name=Bloatware></ref> | ||
|{{Red}} {{License|Proprietary}} | | |||
|- | |- | ||
|MEmu | |MEmu | ||
|align=left|{{Icon|Windows}} | | align="left" |{{Icon|Windows}} | ||
|[https://www.memuplay.com/ {{MEmuVer}}] | |[https://www.memuplay.com/ {{MEmuVer}}]||{{Ya}}||{{Red}} {{License|Proprietary}} | ||
| | |?||{{Na}}<ref group="lower-alpha" name=Bloatware></ref> | ||
|{{Red}} {{License|Proprietary}} | | |||
|- | |- | ||
| | |MuMu | ||
|align=left|{{Icon|Windows|macOS}} | | align="left" |{{Icon|Windows|macOS}} | ||
|[https:// | |[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 Ver)]</small>||{{Ya}}||{{Red}} {{License|Proprietary}} | ||
| | |?||{{Na}}<ref group="lower-alpha" name=Bloatware></ref> | ||
|{{Red}} {{License|Proprietary}} | | |||
|- | |- | ||
| | |NoxPlayer | ||
|align=left|{{Icon|Windows | | align="left" |{{Icon|Windows}} | ||
|[https:// | |[https://www.bignox.com 7.0.2.7]||{{Ya}}||{{Red}} {{License|Proprietary}} | ||
|?||{{Na}}<ref group="lower-alpha" name=Bloatware></ref> | |||
| | |||
|{{Red}} {{License|Proprietary}} | | |||
|- | |- | ||
|LeapDroid | |LeapDroid | ||
|align=left|{{Icon|Windows}} | |align=left|{{Icon|Windows}} | ||
|[http://www.leapdroid.com/ 1.8.0] | |[http://www.leapdroid.com/ 1.8.0]||{{Na}}||{{Red}} {{License|Proprietary}} | ||
| | |?||{{Na}} | ||
|{{Red}} {{License|Proprietary}} | | |||
|- | |- | ||
|Peak App Player | |Peak App Player | ||
|align=left|{{Icon|Windows}} | |align=left|{{Icon|Windows}} | ||
|[http://web.archive.org/web/20191120002207/http://www.peakplayer.net/index.php/en/peakplayeren/ 1.2.5 Beta 2] | |[http://web.archive.org/web/20191120002207/http://www.peakplayer.net/index.php/en/peakplayeren/ 1.2.5 Beta 2]||{{Na}}||{{Red}} {{License|Proprietary}} | ||
| | |?||{{Na}} | ||
|{{Red}} {{License|Proprietary}} | | |||
|- | |- | ||
|Shashlik | |Shashlik | ||
|align=left|{{Icon|Linux}} | |align=left|{{Icon|Linux}} | ||
|[http://www.shashlik.io/ 0.9.3] | |[http://www.shashlik.io/ 0.9.3]||{{Na}}||{{Dunno}} | ||
| | |?||{{Na}} | ||
|{{ | |||
|- | |- | ||
|SmartGaGa | |SmartGaGa | ||
|align=left|{{Icon|Windows}} | |align=left|{{Icon|Windows}} | ||
|[http://web.archive.org/web/20190820044528/https://www.smartgaga.com/ 1.1.646] | |[http://web.archive.org/web/20190820044528/https://www.smartgaga.com/ 1.1.646]||{{Na}}||{{Red}} {{License|Proprietary}} | ||
| | |?||{{Na}} | ||
|{{Red}} {{License|Proprietary}} | | |||
|- | |- | ||
|Windroy | |Windroy | ||
|align=left|{{Icon|Windows}} | |align=left|{{Icon|Windows}} | ||
|[https://sourceforge.net/projects/windroy/ 4.0.3] | |[https://sourceforge.net/projects/windroy/ 4.0.3]||{{Na}}||{{Red}} {{License|Proprietary}} | ||
| | |?||{{Na}} | ||
|{{Red}} {{License|Proprietary}} | | |||
|- | |- | ||
|Windroye | |Windroye | ||
|align=left|{{Icon|Windows}} | |align=left|{{Icon|Windows}} | ||
|2.9.1 | |2.9.1||{{Na}}||{{Red}} {{License|Proprietary}} | ||
| | |?||{{Na}} | ||
|{{Red}} {{License|Proprietary}} | | |||
|- | |- | ||
|Xamarin Android Player | |Xamarin Android Player | ||
|align=left|{{Icon|Windows|macOS}} | |align=left|{{Icon|Windows|macOS}} | ||
|[https://github.com/xamarin/release-notes-archive/blob/master/release-notes/android/android-player/index.md 0.6.5] | |[https://github.com/xamarin/release-notes-archive/blob/master/release-notes/android/android-player/index.md 0.6.5]||{{Na}}||{{Red}} {{License|Proprietary}} | ||
| | |?||{{Na}} | ||
|{{Red}} {{License|Proprietary}} | | |||
|- | |- | ||
|XePlayer | |XePlayer | ||
|align=left|{{Icon|Windows}} | |align=left|{{Icon|Windows}} | ||
|[http://xeplayer.com/ 6.0.10] | |[http://xeplayer.com/ 6.0.10]||{{Na}}||{{Red}} {{License|Proprietary}} | ||
| | |?||{{Na}} | ||
|{{Red}} {{License|Proprietary}} | | |||
|- | |- | ||
|YouWave | |YouWave | ||
|align=left|{{Icon|Windows}} | |align=left|{{Icon|Windows}} | ||
|[https://youwave.com/ 5.11] | |[https://youwave.com/ 5.11]||{{Na}}||{{Red}} {{License|Proprietary}} | ||
| | |?||{{Na}} | ||
|{{Red}} {{License|Proprietary}} | | |||
|- | |- | ||
|Lepton | |Lepton | ||
|align=left|{{Icon|Linux}} | |align=left|{{Icon|Linux}} | ||
|{{TBD}} | | ||{{TBD}}||{{TBD}} | ||
||[https://steamdb.info/app/3043620/info/ ?] | ||[https://steamdb.info/app/3043620/info/ ?]||{{TBD}} | ||
|- | |- | ||
! colspan=" | ! colspan="7" |Mobile | ||
|- | |- | ||
|Windows Bridge for Android<br><small>(Project Astoria)</small> | |Windows Bridge for Android<br><small>(Project Astoria)</small> | ||
|align=left|{{Icon|Win10Phone}} | | align="left" |{{Icon|Win10Phone}} | ||
|Discontinued ($) | |Discontinued ($)||{{Na}}||{{Red}} {{License|Proprietary}} | ||
| | |?||{{Na}} | ||
|{{Red}} {{License|Proprietary}} | | |||
|} | |} | ||
| Line 225: | Line 184: | ||
!Platform(s) | !Platform(s) | ||
!Latest Version | !Latest Version | ||
!Active | |||
![[Licensing|License]] | |||
!Compatibility | !Compatibility | ||
![[Recommended Emulators|Recommended]] | ![[Recommended Emulators|Recommended]] | ||
|- | |- | ||
! colspan=" | ! colspan="7" |PC | ||
|- | |- | ||
|KMRE | |KMRE | ||
|align=left|{{Icon|Linux}} | |align=left|{{Icon|Linux}} | ||
|[https://archive.ubuntukylin.com/ubuntukylin/pool/partner/kmre_2.4.6.8+22.04_amd64.deb 2.4.6.8] | |[https://archive.ubuntukylin.com/ubuntukylin/pool/partner/kmre_2.4.6.8+22.04_amd64.deb 2.4.6.8]||{{Dunno}} ||{{Dunno}}||{{Dunno}} ||{{Na}} | ||
|{{ | |||
|} | |} | ||
<references group= | <references group="lower-alpha" /> | ||
==Comparisons== | ==Comparisons== | ||
| Line 292: | Line 250: | ||
:;Xamarin Android Player | :;Xamarin Android Player | ||
::A newcomer to the Android emulation market. Not much is known about this because it required a minimum $25/month subscription to main Xamarin products. The main Xamarin products were | ::A newcomer to the Android emulation market. Not much is known about this because it required a minimum $25/month subscription to main Xamarin products. The main Xamarin products were [https://blog.xamarin.com/xamarin-for-all made available for free] after the purchase by Microsoft, but Xamarin Android Player was discontinued, as its technology was later incorporated into Visual Studio for Android app development. | ||
:;Project Astoria | :;Project Astoria | ||
| Line 304: | Line 262: | ||
:;KMRE | :;KMRE | ||
::KMRE is a compatibility layer and The official solution to run Android applications on computers with Chinese homegrown Phytium/KunPeng ARM processors and NeoKylin Linux operating system, though later also available on x86-64 on [https://www.ubuntukylin.com/index-en.html Ubuntu Kylin]. KMRE is not designed with third-party applications outside its app store and in fact, force installing third-party apps breaks older versions of KMRE. | ::KMRE is a compatibility layer and The official solution to run Android applications on computers with Chinese homegrown Phytium/KunPeng ARM processors and NeoKylin Linux operating system, though later also available on x86-64 on [https://www.ubuntukylin.com/index-en.html Ubuntu Kylin]. KMRE is not designed with third-party applications outside its app store and in fact, force installing third-party apps breaks older versions of KMRE. It's an somewhat reasonable solution if you are restricted to working with these kinds of computers due to national security reasons. | ||
::See [[#KMRE|KMRE section]] for more information. | ::See [[#KMRE|KMRE section]] for more information. | ||
| Line 311: | Line 269: | ||
{|class="wikitable sortable" style="text-align:center;width:100%" | {|class="wikitable sortable" style="text-align:center;width:100%" | ||
|+Please only include recommended emulators in this table. Do not bump or spam GitHub threads, issues, or feature request pages. | |+Please only include recommended emulators in this table. Do not bump or spam GitHub threads, issues, or feature request pages. | ||
! colspan=2 | ! colspan=2 | Name | ||
!ARCVM | |||
! Android Studio | |||
! Genymotion | ! Genymotion | ||
! Google Play Games | ! Google Play Games | ||
! Trinity | |||
!Waydroid | |||
! WSA | ! WSA | ||
|- | |- | ||
| rowspan="1" | Controls | | rowspan="1" | Controls | ||
| [https://docs.retroachievements.org/general/tutorials/turbo-button.html Turbo button] | | [https://docs.retroachievements.org/general/tutorials/turbo-button.html Turbo button] | ||
| {{Dunno}} | | {{Dunno}} | ||
| {{Dunno}} | | {{Dunno}}||{{Dunno}} | ||
| {{Dunno}} | |||
| {{Dunno}} | | {{Dunno}} | ||
| {{Dunno}} | | {{Dunno}} | ||
| Line 333: | Line 290: | ||
|{{Enhancements/Post-processing/AI-powered filter compatible}} | |{{Enhancements/Post-processing/AI-powered filter compatible}} | ||
| {{Dunno}} | | {{Dunno}} | ||
| {{Dunno}} | | {{Dunno}}||{{Dunno}} | ||
| {{Dunno}} | |||
| {{Dunno}} | | {{Dunno}} | ||
| {{Dunno}} | | {{Dunno}} | ||
| Line 341: | Line 297: | ||
|- | |- | ||
| {{Enhancements/Post-processing/Filters}} | | {{Enhancements/Post-processing/Filters}} | ||
| {{~}}< | | {{Dunno}} | ||
| {{~}}<br><small>Android Studio emulator [https://developer.android.com/studio/run/managing-avds#skins supports lots of device frame and custom skin] (similarly 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.</small>||{{~}}<br><small>Similarly to Android Studio, it has device skin capability for better immersion but it's exclusive to users with license registration.</small> | |||
| {{Na}} | | {{Na}} | ||
| {{Na}} | | {{Na}} | ||
| {{Dunno}} | | {{Dunno}} | ||
| {{Na}} | | {{Na}} | ||
|- | |- | ||
|[[High_dynamic_range#Inverse_tone_mapping|Inverse tone mapping compatible]] | |[[High_dynamic_range#Inverse_tone_mapping|Inverse tone mapping compatible]] | ||
| {{Dunno}} | | {{Dunno}} | ||
| {{Dunno}}||{{Dunno}} | |||
| {{Dunno}} | | {{Dunno}} | ||
| {{Dunno}} | | {{Dunno}} | ||
| {{Dunno}} | | {{Dunno}} | ||
| {{Dunno}} | | {{Dunno}} | ||
|- | |||
| [[Wikipedia:Category:Anti-aliasing_algorithms|Post-rendering anti-aliasing]]<br><small>(FXAA, TXAA and MLAA/SMAA)</small> | |||
| {{Dunno}} | | {{Dunno}} | ||
| {{ | | {{Na}}||{{Na}} | ||
| | |||
| {{Na}} | |||
| {{Na}} | | {{Na}} | ||
| {{Na}} | | {{Na}} | ||
| {{Dunno}} | | {{Dunno}} | ||
| {{Na}} | | {{Na}} | ||
|- | |||
| [[Wikipedia:Comparison_gallery_of_image_scaling_algorithms|Post-rendering scaling]]<br><small>(Sharp bilinear, Lanczos and [[Wikipedia:GPUOpen#FidelityFX_Super_Resolution|FSR 1]])</small> | |||
| {{Dunno}} | | {{Dunno}} | ||
| {{Na}} | | {{Na}}||{{Na}} | ||
| | |||
| {{Na}} | |||
| {{Na}} | | {{Na}} | ||
| {{Na}} | | {{Na}} | ||
| {{Dunno}} | | {{Dunno}} | ||
| Line 377: | Line 329: | ||
|- | |- | ||
| {{Enhancements/Post-processing/Shader chain}} | | {{Enhancements/Post-processing/Shader chain}} | ||
| {{Dunno}} | |||
| {{Na}}||{{Na}} | |||
| {{Na}} | | {{Na}} | ||
| {{Na}} | | {{Na}} | ||
| {{Dunno}} | | {{Dunno}} | ||
| Line 388: | Line 339: | ||
|Automatic updater | |Automatic updater | ||
| {{Dunno}} | | {{Dunno}} | ||
| {{Dunno}} | | {{Dunno}}||{{Dunno}} | ||
| {{Dunno}} | |||
| {{Dunno}} | | {{Dunno}} | ||
| {{Dunno}} | | {{Dunno}} | ||
| Line 397: | Line 347: | ||
| Big Picture Mode | | Big Picture Mode | ||
| {{Dunno}} | | {{Dunno}} | ||
| {{Dunno}} | | {{Dunno}}||{{Dunno}} | ||
| {{Dunno}} | |||
| {{Dunno}} | | {{Dunno}} | ||
| {{Na}} | | {{Na}} | ||
| Line 404: | Line 353: | ||
| {{Dunno}} | | {{Dunno}} | ||
|- | |- | ||
| Built-in on-screen control<br | | Built-in on-screen control<br><small>Simulating touch input on display via keyboard or gamepad. This QoL enhancement is crucial for lots of touch input exclusive games.<br>Also you can use third-party apps such as [https://github.com/Shyri/TouchMapper TouchMapper] for this.</small> | ||
| {{Dunno}} | | {{Dunno}} | ||
| {{Dunno}} | | {{Dunno}}||{{Dunno}} | ||
| {{Dunno}} | | {{Dunno}} | ||
| {{Na}} | | {{Na}} | ||
| {{Dunno}} | | {{Dunno}} | ||
| {{Dunno}} | | {{Dunno|link=https://old.reddit.com/r/WSA/comments/z62m2v/how_do_i_remap_key_to_screen_presses_for_gaming/}} | ||
|- | |- | ||
| [[Compatibility_layer|Built-in translation layer]] | | [[Compatibility_layer|Built-in translation layer]] | ||
| {{Dunno}} | | {{Dunno}} | ||
| {{Dunno}}||{{Na}}<br><small>You need to manually install libhoudini translation layer on guest system for Genymotion. See [[compatibility layer]] for more info.</small> | |||
| {{Ya|link=https://developer.android.com/games/playgames/start#playbility-architecture}} | |||
| {{Ya}} | | {{Ya}} | ||
| {{Dunno}} | | {{Dunno}} | ||
| {{Dunno}} | | {{Dunno}} | ||
|- | |- | ||
| [[Hypervisors|Built-in, self-contained or integrated virtualization engine]]<br | | [[Hypervisors|Built-in, self-contained or integrated virtualization engine]]<br><small>Emulators that employ a self-contained hypervisor are a distinct class of virtualization solutions that integrate their own layer directly into the application package similarly to [[Computer_specifications#Recommended_Specifications|static linking]]. Unlike emulators that rely on third-party or host operating system (OS) features (Microsoft Hyper-V/WHPX, KVM or Intel's HAXM), these solutions are designed to be functionally independent of the host OS's virtualization stack. On Windows, this is typically achieved for Android emulation by installing a proprietary, kernel-level driver that acts as a hypervisor to manage the virtual machine, bypassing the need for pre-existing host OS'es virtualization stack/feature. This shouldn't be confused with hardware-assisted virtualization (VT-x/AMD-V).</small> | ||
| {{Dunno}} | | {{Dunno}} | ||
| {{Na}}<br/><small>< | | {{Na}}<br><small>Android Studio has Android emulator, which is [https://developer.android.com/studio/intro/update#recommended QEMU]-based device-emulation tool. Supports [https://developer.android.com/studio/run/emulator-acceleration#vm-windows-aehd AEHD] driver (although its deprecated?), OR [https://developer.android.com/studio/run/emulator-acceleration#choose-windows-hypervisor WHPX for Windows] and [https://developer.android.com/studio/run/emulator-acceleration#vm-linux KVM for Linux] for hardware acceleration.</small>||{{Na}}<br><small>It has built-in QEMU version which asks for Hyper-V ([https://docs.genymotion.com/desktop/Get_started/011_Windows_install/#hypervisor on Windows]) (it's currently in beta), otherwise you need to use "with VirtualBox" builds.</small> | ||
| {{Na}}<br><small>''Hyper-V-dependent''</small> | |||
| {{Na}}<br><small><br><small>It's uses [https://github.com/TrinityEmulator/TrinityEmulator#4-code-organization QEMU 5.0] and asks for Hyper-V or obsolete HAXM for hardware acceleration.</small> | |||
| {{Dunno}} | | {{Dunno}} | ||
| {{Na}}<br | | {{Na}}<br><small>''Hyper-V-dependent''</small> | ||
|- | |- | ||
| Command-line options | | Command-line options | ||
| {{Dunno}} | | {{Dunno}} | ||
| {{Dunno}}||{{Ya|link=https://docs.genymotion.com/desktop/06_GMTool/}} | |||
| {{Dunno}} | | {{Dunno}} | ||
| {{Ya}} | | {{Ya}} | ||
| Line 440: | Line 385: | ||
| {{Dunno}} | | {{Dunno}} | ||
|- | |- | ||
| File sharing<br | | File sharing<br><small>Similar to "Shared Folder" enhancement for [[Hypervisors#Type_2_hypervisors|Type-2 hypervisors]].</small> | ||
| {{Dunno}} | | {{Dunno}} | ||
| {{Dunno}}||{{Dunno}} | |||
| {{Dunno}} | | {{Dunno}} | ||
| {{Dunno}} | | {{Dunno}} | ||
| Line 451: | Line 395: | ||
| Multiple instances and instance manager | | Multiple instances and instance manager | ||
| {{Dunno}} | | {{Dunno}} | ||
| {{ | | {{Dunno}}||{{Dunno}} | ||
| {{Dunno}} | | {{Na|link=https://www.youtube.com/watch?v=2KEaPQpfzkQ&t=422}} | ||
| {{ | |||
| {{Na}} | | {{Na}} | ||
| {{Dunno}} | | {{Dunno}} | ||
| {{Dunno}} | | {{Dunno}} | ||
|- | |- | ||
| On-screen display<br | | On-screen display<br><small>Showcases messages, controller input state which is useful for speedrunners, performance data, active settings, and various notifications.</small> | ||
| {{Dunno}} | | {{Dunno}} | ||
| {{Dunno}}||{{Dunno}} | |||
| {{Dunno}} | | {{Dunno}} | ||
| {{Dunno}} | | {{Dunno}} | ||
| Line 467: | Line 409: | ||
| {{Dunno}} | | {{Dunno}} | ||
|- | |- | ||
|Pause/ | |Pause/Resume emulation | ||
| {{Dunno}} | | {{Dunno}} | ||
| {{Dunno}}||{{Dunno}} | |||
| {{Dunno}} | | {{Dunno}} | ||
| {{Dunno}} | | {{Dunno}} | ||
| Line 478: | Line 419: | ||
| Per-game profiles | | Per-game profiles | ||
| {{Dunno}} | | {{Dunno}} | ||
| {{Dunno}}||{{Dunno}} | |||
| {{Dunno}} | | {{Dunno}} | ||
| {{Dunno}} | | {{Dunno}} | ||
| {{Dunno}} | | {{Dunno}} | ||
| {{Dunno}} | | {{Dunno}} | ||
|- | |||
|[https://www.portablefreeware.com/faq.php#portable Portable] and [https://www.portablefreeware.com/faq.php#stealth stealth]<br><small>Useful enhancement feature for non-personal computer use or plug-and-play scenarios. However, the software may still require the necessary [[Computer_specifications#Operating_System|prerequisites and dependencies]] for your operating system if it is not statically linked.</small> | |||
| {{Dunno}} | | {{Dunno}} | ||
| {{ | | {{Na}}||{{Na}} | ||
| | |||
| {{Na}} | |||
| {{Na}} | | {{Na}} | ||
| {{Na}} | | {{Na}} | ||
| {{Dunno}} | | {{Dunno}} | ||
| Line 495: | Line 434: | ||
|- | |- | ||
| [[Save_disk_space_for_ISOs#PlayStation_1|Streamable compression format]] | | [[Save_disk_space_for_ISOs#PlayStation_1|Streamable compression format]] | ||
| {{Na}} | | {{Dunno}} | ||
| {{Na}}||{{Na}} | |||
| {{Na}} | | {{Na}} | ||
| {{Na}} | | {{Na}} | ||
| {{Dunno}} | | {{Dunno}} | ||
| Line 504: | Line 442: | ||
|- | |- | ||
| rowspan="5" |[https://tasvideos.org/Emulatorresources/Features TAS features] | | rowspan="5" |[https://tasvideos.org/Emulatorresources/Features TAS features] | ||
|Fast | |Fast forward/Turbo speed | ||
| {{Na}} | | {{Dunno}} | ||
| {{Na}}||{{Na}} | |||
| {{Na}} | | {{Na}} | ||
| {{Na}} | | {{Na}} | ||
| {{Dunno}} | | {{Dunno}} | ||
| Line 515: | Line 452: | ||
|[[Wikipedia:Macro_(computer_science)|Macros/Scripts]]/[https://tasvideos.org/LuaScripting Lua] | |[[Wikipedia:Macro_(computer_science)|Macros/Scripts]]/[https://tasvideos.org/LuaScripting Lua] | ||
| {{Dunno}} | | {{Dunno}} | ||
| {{Dunno}}||{{Dunno}} | |||
| {{Dunno}} | | {{Dunno}} | ||
| {{Na}} | | {{Na}} | ||
| {{Dunno}} | | {{Dunno}} | ||
| {{Na}} | | {{Na}} | ||
|- | |- | ||
|[https://tasvideos.org/Movies Movie recording/playback] | |[https://tasvideos.org/Movies Movie recording/playback] | ||
| {{Dunno}} | |||
| {{Na}}||{{Na}} | |||
| {{Na}} | | {{Na}} | ||
| {{Na}} | | {{Na}} | ||
| {{Dunno}} | | {{Dunno}} | ||
| Line 532: | Line 467: | ||
|- | |- | ||
|Rewind | |Rewind | ||
| {{Na}} | | {{Dunno}} | ||
| {{Na}}||{{Na}} | |||
| {{Na}} | | {{Na}} | ||
| {{Na}} | | {{Na}} | ||
| {{Dunno}} | | {{Dunno}} | ||
| Line 541: | Line 475: | ||
|- | |- | ||
|Save states | |Save states | ||
| {{Dunno}} | |||
| {{Na}}||{{Na}} | |||
| {{Na}} | | {{Na}} | ||
| {{Na}} | | {{Na}} | ||
| {{Dunno}} | | {{Dunno}} | ||
| {{Na}} | | {{Na}} | ||
|- | |- | ||
| rowspan=" | | rowspan="6" |Misc. | ||
| Debug features<br><small>adb support, [https://developer.android.com/agi AGI support], integration with IDE etc.</small> | | Debug features<br><small>adb support, [https://developer.android.com/agi AGI support], integration with IDE etc.</small> | ||
| {{Dunno}} | | {{Dunno}} | ||
| {{Ya}} | | {{Ya}}||{{Dunno}} | ||
| {{Ya|link=https://developer.android.com/games/playgames/pg-emulator}} | |||
| {{Dunno}} | | {{Dunno}} | ||
| {{Dunno}} | | {{Dunno}} | ||
| {{Dunno}} | | {{Dunno}} | ||
|- | |- | ||
| [[Virtual_reality#VR_game_room_simulations|EmuVR support]] | | [[Virtual_reality#VR_game_room_simulations|EmuVR support]] | ||
| colspan="7" | | | colspan="7" |Exclusive to [https://www.emuvr.net/wiki/Installation_Guide#Downloads libretro cores] at the moment. So there is no support. | ||
|- | |- | ||
| [[Netplay]] | | [[Netplay]] | ||
| {{Na}} | | {{Dunno}} | ||
| {{Na}}||{{Na}} | |||
| {{Na}} | | {{Na}} | ||
| {{Na}} | | {{Na}} | ||
| {{Dunno}} | | {{Dunno}} | ||
| {{Na}} | | {{Na}} | ||
|- | |- | ||
|Rich Presence (RPC)<br | |Rich Presence (RPC)<br><small>Allows the emulator to share real-time game session details (e.g., current game title, level, boss, playtime, or custom status) with external applications. This enables features such as displaying what you're playing on your profile, inviting friends to spectate, or triggering join-in-progress functionality where supported.</small> | ||
|{{Dunno}} | |{{Dunno}} | ||
|{{Dunno}}||{{Dunno}} | |||
|{{Dunno}} | |{{Dunno}} | ||
|{{Dunno}} | |{{Dunno}} | ||
| Line 583: | Line 510: | ||
|{{Dunno}} | |{{Dunno}} | ||
|- | |- | ||
| [[Wikipedia:Variable_refresh_rate|Variable refresh rate | |Screen translator<br><small>Using optical character recognition (OCR) and other techniques, this feature can provide live translation of in-game text, text-to-speech for visually impaired users, and more — either on demand or automatically.</small> | ||
| colspan="7" |You can use [https://docs.libretro.com/guides/ai-service/ RetroArch's AI Service] or the standalone offline [https://github.com/bquenin/interpreter bquenin's Interpreter]. | |||
|- | |||
| [[Wikipedia:Variable_refresh_rate|Variable refresh rate]] | |||
| {{Dunno}} | | {{Dunno}} | ||
| {{Dunno}}||{{Dunno}} | |||
| {{Dunno}} | | {{Dunno}} | ||
| {{Dunno}} | | {{Dunno}} | ||
| Line 592: | Line 521: | ||
| {{Dunno}} | | {{Dunno}} | ||
|} | |} | ||
<references group= | <references group="lower-alpha"/> | ||
==Hardware features== | ==Hardware features== | ||
{|class="wikitable" style="text-align:center;width:100%" | {|class="wikitable" style="text-align:center;width:100%" | ||
|+Please only include recommended emulators in this table. Do not bump or spam GitHub threads, issues, or feature request pages. | |+Please only include recommended emulators in this table. Do not bump or spam GitHub threads, issues, or feature request pages. | ||
! colspan=2 | ! colspan=2 | Name | ||
! | !ARCVM | ||
! Android Studio | |||
! [https://docs.genymotion.com/desktop/04_Emulating_sensors_and_features/ Genymotion] | |||
! Google Play Games | ! Google Play Games | ||
! Trinity | |||
!Waydroid | |||
! WSA | ! WSA | ||
|- | |- | ||
| colspan="2" | [https://developer.android.com/training/monitoring-device-state/battery-monitoring Battery]<br | | colspan="2" | [https://developer.android.com/training/monitoring-device-state/battery-monitoring Battery]<br><small>The Battery simulation allows you to test how your application reacts with different battery charge levels and states of charge.</small> | ||
|{{Dunno}} | |{{Dunno}} | ||
|{{Ya|link=https://developer.android.com/studio/run/emulator-extended-controls}}||{{Ya|link=https://docs.genymotion.com/desktop/04_Emulating_sensors_and_features/#battery}} | |||
|{{Dunno}} | |{{Dunno}} | ||
|{{Dunno}} | |{{Dunno}} | ||
|{{Dunno}} | |{{Dunno}} | ||
|{{Dunno}} | |{{Dunno}} | ||
|- | |- | ||
| colspan="2" | [https://developer.android.com/develop/connectivity/bluetooth Bluetooth] | | colspan="2" | [https://developer.android.com/develop/connectivity/bluetooth Bluetooth] | ||
|{{Dunno}} | |{{Dunno}} | ||
|{{Na}} | |{{Ya|link=https://stackoverflow.com/questions/22604305/how-to-use-android-emulator-for-testing-bluetooth-application}}||{{Na}} | ||
|{{Dunno}} | |||
|{{Dunno}} | |||
|{{Dunno}} | |||
|{{Na|link=https://xdaforums.com/t/looking-wsa-for-windows-11-where-bluetooth-also-works.4610551/post-88829045}} | |||
|- | |||
| colspan="2" |Camera||{{Dunno}} | |||
|{{Dunno}} | |||
|{{Ya}}||{{Dunno}} | |||
|{{Dunno}} | |{{Dunno}} | ||
|{{Dunno}} | |{{Dunno}} | ||
|{{Dunno}} | |{{Dunno}} | ||
|- | |- | ||
| colspan="2" | [https://developer.android.com/media/camera/camerax Camera] and media input injection<br | | colspan="2" | [https://developer.android.com/media/camera/camerax Camera] and media input injection<br><small>With this, you can select your host webcams, microphones, videos, images or audio files as the device camera and audio input source.</small> | ||
|{{Dunno}} | |{{Dunno}} | ||
|{{Ya}}||{{Ya|link=https://docs.genymotion.com/desktop/04_Emulating_sensors_and_features/#camera-and-media-injection}} | |||
|{{Dunno}} | |{{Dunno}} | ||
|{{Dunno}} | |{{Dunno}} | ||
|{{Dunno}} | |{{Dunno}} | ||
|{{Dunno}} | |{{Dunno}} | ||
|- | |- | ||
| rowspan="2" |Connectivity | | rowspan="2" |Connectivity | ||
| [[Wikipedia:Google_Cloud_Messaging|Google Cloud Messaging (GCM)]] | | [[Wikipedia:Google_Cloud_Messaging|Google Cloud Messaging (GCM)]] | ||
|{{Dunno}} | |{{Dunno}} | ||
|{{Dunno}}||{{Dunno}} | |||
|{{Dunno}} | |{{Dunno}} | ||
|{{Dunno}} | |{{Dunno}} | ||
|{{Dunno}} | |{{Dunno}} | ||
|{{Dunno}} | |{{Dunno}} | ||
|- | |||
| [[Preservation_projects#Private_Platform_Servers|Google Play Games]]<br>[[Preservation_projects#Private_Platform_Servers|Google Play Services]]<br><small>Achievements, Challenges, Leaderboards etc.</small> | |||
|{{Dunno}} | |{{Dunno}} | ||
|{{Ya}}||{{Ya|link=https://docs.genymotion.com/desktop/04_Emulating_sensors_and_features/#open-gapps}} | |||
|{{Ya}} | |||
|{{Dunno}} | |||
|{{Dunno}} | |||
|{{Dunno}} | |||
|- | |||
| colspan="2" | [https://developer.android.com/develop/ui/views/touch-and-input/game-controllers Controllers] | |||
|{{Dunno}} | |||
|{{Dunno}}||{{Ya}} | |||
|{{Ya|link=https://blog.google/products/google-play/google-play-games-beta-october-2023-update/}} | |||
|{{Na|link=https://github.com/TrinityEmulator/TrinityEmulator/issues/3}} | |||
|{{Dunno}} | |{{Dunno}} | ||
|{{Ya|link=https://learn.microsoft.com/en-us/windows/android/wsa/release-notes#build-22084000040}} | |||
|- | |- | ||
| | | colspan="2" | Disk I/O<br><small>Similarly to [[PC_emulator_comparisons#Storage|disk storage emulation on PC emulators]], this allows you to emulate devices with slow internal storage.</small> | ||
|{{ | |{{Dunno}} | ||
|{{Dunno}}||{{Ya|link=https://docs.genymotion.com/desktop/04_Emulating_sensors_and_features/#disk-io}} | |||
|{{Dunno}} | |{{Dunno}} | ||
|{{Dunno}} | |{{Dunno}} | ||
|{{Dunno}} | |{{Dunno}} | ||
|{{Dunno}} | |{{Dunno}} | ||
|- | |- | ||
| colspan="2" | | | colspan="2" | [https://developer.android.com/games/optimize/adpf/gamemode/about-API-and-interventions Game Mode] | ||
|{{Dunno}} | |{{Dunno}} | ||
|{{Dunno}}||{{Dunno}} | |||
|{{Dunno}} | |{{Dunno}} | ||
|{{Dunno}} | |{{Dunno}} | ||
|{{Dunno}} | |{{Dunno}} | ||
|{{Dunno}} | |{{Dunno}} | ||
|- | |||
| colspan="2" | [[Wikipedia:Android_(operating_system)#Home_screen|Home screen]]<br><small>This shouldn't be confused with emulator frontend/GUI.</small> | |||
|{{Dunno}} | |{{Dunno}} | ||
|{{Ya}}||{{Ya}} | |||
|{{Dunno}}<br><small>[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] ({{YouTubeVideoTime|2KEaPQpfzkQ|408|Demonstration}}). It's unclear whether this app directly emulates the native home screen or provides an alternative UI/UX with limited features.</small> | |||
|{{Ya}} | |||
|{{Dunno}} | |||
|{{Na}} | |||
|- | |- | ||
| colspan="2" | [https://developer.android.com/develop/ui/views/touch-and-input/ | | colspan="2" | [https://developer.android.com/develop/ui/views/touch-and-input/keyboard-input Keyboard] | ||
|{{Dunno}} | |||
|{{Ya}}||{{Dunno}} | |||
|{{Ya|link=https://www.youtube.com/watch?v=2KEaPQpfzkQ&t=153}} | |||
|{{Ya}} | |{{Ya}} | ||
|{{Dunno}} | |{{Dunno}} | ||
|{{ | |{{Dunno}} | ||
|- | |||
| colspan="2" | [https://developer.android.com/reference/android/location/Location Location] | |||
|{{Dunno}} | |||
|{{Ya|link=https://developer.android.com/studio/run/emulator-extended-controls}}||{{Ya|link=https://docs.genymotion.com/desktop/04_Emulating_sensors_and_features/#gps}} | |||
|{{Dunno}} | |||
|{{Dunno}} | |||
|{{Dunno}} | |{{Dunno}} | ||
|{{Dunno}} | |{{Dunno}} | ||
|- | |- | ||
| colspan="2" | | | colspan="2" |Microphone||{{Dunno}} | ||
|{{Dunno}} | |||
|{{Ya}}||{{Dunno}} | |||
|{{Dunno}} | |{{Dunno}} | ||
|{{Dunno}} | |{{Dunno}} | ||
|{{Dunno}} | |{{Dunno}} | ||
|- | |||
| colspan="2" | [https://developer.android.com/games/playgames/input-mouse Mouse] | |||
|{{Dunno}} | |{{Dunno}} | ||
|{{Dunno}}||{{Ya}} | |||
|{{Ya|link=https://www.youtube.com/watch?v=2KEaPQpfzkQ&t=153}} | |||
|{{Dunno}} | |{{Dunno}} | ||
|{{Dunno}} | |{{Dunno}} | ||
|{{Dunno}} | |{{Dunno}} | ||
|- | |- | ||
| colspan="2" | [ | | colspan="2" | [https://developer.android.com/jetpack/compose/touch-input/pointer-input/multi-touch Multi-touch] | ||
|{{ | |{{Dunno}} | ||
|{{Dunno}} | |{{Dunno}}||{{Ya|link=https://docs.genymotion.com/desktop/03_Virtual_devices/#touchscreen}} | ||
|{{ | |{{Dunno|link=https://support.google.com/googleplay/thread/249633800/lack-of-multi-touch-support-on-play-games-beta?hl=en}} | ||
|{{Dunno}} | |||
|{{Dunno}} | |{{Dunno}} | ||
|{{Dunno}} | |{{Dunno}} | ||
|- | |- | ||
| colspan="2" | | | colspan="2" |Navigation buttons||{{Dunno}} | ||
|{{Dunno}} | |||
|{{Ya}}||{{Dunno}} | |||
|{{Dunno}} | |||
|{{Dunno}} | |{{Dunno}} | ||
|{{Dunno}} | |{{Dunno}} | ||
|- | |||
| colspan="2" | [https://developer.android.com/develop/ui/views/notifications Notifications] | |||
|{{Dunno}} | |{{Dunno}} | ||
|{{Ya}}||{{Ya}} | |||
| {{~|link=https://developer.android.com/games/playgames/faq#q_can_we_use_push_notifications_for_google_play_games}} | |||
|{{Ya}} | |{{Ya}} | ||
|{{Dunno}} | |{{Dunno}} | ||
|{{Ya}} | |{{Ya|link=https://learn.microsoft.com/en-us/windows/android/wsa/release-notes#build-220440000190}} | ||
|- | |- | ||
| colspan="2" | | | colspan="2" |Power button||{{Dunno}} | ||
|{{ | |||
|{{Dunno}} | |{{Dunno}} | ||
|{{Ya}}||{{Dunno}} | |||
|{{Dunno}} | |{{Dunno}} | ||
|{{Dunno}} | |{{Dunno}} | ||
|{{Dunno}} | |{{Dunno}} | ||
|- | |- | ||
| colspan="2" | | | colspan="2" |Screen rotation||{{Dunno}} | ||
|{{Dunno}} | |||
|{{Dunno}} | |{{Dunno}} | ||
|{{Ya}}||{{Dunno}} | |||
|{{Dunno}} | |{{Dunno}} | ||
|{{Dunno}} | |{{Dunno}} | ||
|{{Dunno}} | |{{Dunno}} | ||
|- | |- | ||
| | | rowspan="3" |[[List_of_console_games_that_support_motion_controls#Android_Emulation|Sensors]] | ||
| | |Accelerometer||{{Dunno}} | ||
|{{ | |||
|{{Dunno}} | |{{Dunno}} | ||
|{{Ya}}||{{Dunno}} | |||
|{{Dunno}} | |{{Dunno}} | ||
|{{Dunno}} | |{{Dunno}} | ||
|{{Dunno}} | |{{Dunno}} | ||
|- | |||
|Gyroscope||{{Dunno}} | |||
|{{Ya|link=https://developer.android.com/studio/run/emulator-extended-controls}}||{{Ya|link=https://www.genymotion.com/blog/genymotion-desktop-3-8-0/}} | |||
|{{Dunno}} | |{{Dunno}} | ||
|{{Dunno}} | |{{Dunno}} | ||
|{{Dunno}} | |{{Dunno}} | ||
|{{Dunno}} | |{{Dunno}} | ||
|- | |||
|Magnetometer||{{Dunno}} | |||
|{{Dunno}} | |{{Dunno}} | ||
|{{Ya}}||{{Dunno}} | |||
|{{Dunno}} | |{{Dunno}} | ||
|{{Dunno}} | |{{Dunno}} | ||
|{{Dunno}} | |{{Dunno}} | ||
|- | |- | ||
| colspan="2" | [https://developer.android.com/studio/run/emulator-install-add-files Sideloading/Installing] | | colspan="2" | [https://developer.android.com/studio/run/emulator-install-add-files Sideloading/Installing] | ||
|{{Dunno}} | |{{Dunno}} | ||
| {{~}}< | |{{Ya}}||{{Dunno}} | ||
| {{~}}<br><small>Exclusive to developer builds, {{YouTubeVideoTime|2KEaPQpfzkQ|280|Demonstration}}. To use sideloading in the developer builds, you need to use adb install "AppName.apk" command in the Command Prompt.</small> | |||
|{{Ya}}<br><small>[https://github.com/TrinityEmulator/TrinityEmulator/wiki/Advanced-Usages#adb-connection Use adb to connect] then use adb install command.</small> | |||
|{{Ya}}< | |||
|{{Dunno}} | |{{Dunno}} | ||
|{{ | | {{~|link=https://github.com/Simizfo/WSATools#requisites}} | ||
|- | |- | ||
| colspan="2" | [https://developer.android.com/develop/connectivity/usb USB and USB passthrough] | | colspan="2" | [https://developer.android.com/develop/connectivity/usb USB and USB passthrough] | ||
|{{Ya}} | |{{Dunno}} | ||
|{{Ya}}||{{Ya}} | |||
|{{Dunno}} | |||
|{{Dunno}} | |||
|{{Dunno}} | |{{Dunno}} | ||
|{{Dunno}} | |{{Dunno}} | ||
|- | |||
| colspan="2" |Volume buttons||{{Dunno}} | |||
|{{Dunno}} | |||
|{{Ya}}||{{Dunno}} | |||
|{{Dunno}} | |{{Dunno}} | ||
|{{Dunno}} | |{{Dunno}} | ||
|{{Dunno}} | |{{Dunno}} | ||
|- | |- | ||
| colspan="2" | [https://developer.android.com/develop/connectivity/wifi/wifi-scan Wi-Fi] | | colspan="2" | [https://developer.android.com/develop/connectivity/wifi/wifi-scan Wi-Fi] | ||
|{{Ya}} | |{{Dunno}} | ||
|{{Ya|link=https://developer.android.com/studio/run/emulator-wifi}}||{{Ya}} | |||
|{{Ya}} | |{{Ya}} | ||
|{{Ya}} | |{{Ya}} | ||
|{{Dunno}} | |{{Dunno}} | ||
|{{Ya}} | |{{Ya}} | ||
|- | |- | ||
! colspan=9 | [[Wikipedia:Android_version_history|OS version]] | ! colspan=9 | [[Wikipedia:Android_version_history|OS version]] | ||
|- | |- | ||
| colspan="2" | [[Wikipedia:Android_version_history#Android_7.1_Nougat|7.1 Nougat]] (API 25)<br | | colspan="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> | ||
|{{Ya}}<ref group=" | |{{Dunno}} | ||
|{{Ya}}||{{Ya}}<ref group="lower-alpha" name="GenymotionOSsupport"></ref> | |||
|{{Na}} | |{{Na}} | ||
|{{Na}} | |{{Na}} | ||
|{{Dunno}} | |{{Dunno}} | ||
|{{Na}} | |{{Na}} | ||
|- | |||
| colspan="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> | |||
|{{Dunno}} | |{{Dunno}} | ||
|{{Ya}} | |{{Ya}}||{{Na}}<ref group="lower-alpha" name="GenymotionOSsupport">[https://support.genymotion.com/hc/en-us/articles/9511224511901-Which-Android-versions-are-available Genymotion: Which Android versions are available?], Since September 2022, Genymotion no longer provide Android 4.4 and below images, see[https://support.genymotion.com/hc/en-us/articles/360002708018-I-can-t-find-Android-4-4-and-below this page].</ref> | ||
| | |||
|{{Na}}<ref group=" | |||
|{{Na}} | |{{Na}} | ||
|{{Na}} | |{{Na}} | ||
|{{Dunno}} | |{{Dunno}} | ||
|{{Na}} | |{{Na}} | ||
|- | |||
| colspan=2 | [[Wikipedia:Android_version_history#Android_12|Snow Cone]] (API 31)<br><small>Android Runtime (ART) module added to the updatable core OS components via Google Play, added functionality to existing modules.</small> | |||
|{{Dunno}} | |{{Dunno}} | ||
|{{Ya}}||{{Ya}}<ref group="lower-alpha" name=GenymotionOSsupport></ref> | |||
|{{Ya}} | |{{Ya}} | ||
| | |{{Na}}<br><small>It uses android-x86 9.0 64-bit.</small> | ||
|{{Dunno}} | |||
|{{ | |||
|{{Na}} | |{{Na}} | ||
|- | |- | ||
! colspan="9" | [https://developer.android.com/ndk/guides/abis Supported ABIs] | ! colspan="9" | [https://developer.android.com/ndk/guides/abis Supported ABIs] | ||
| Line 802: | Line 766: | ||
| colspan="2" | [https://developer.android.com/ndk/guides/abis#arm64-v8a arm64-v8a] | | colspan="2" | [https://developer.android.com/ndk/guides/abis#arm64-v8a arm64-v8a] | ||
|{{Dunno}} | |{{Dunno}} | ||
|{{Ya}}<ref group=" | |{{Ya}}||{{Dunno}} | ||
|{{Ya}}<ref group="lower-alpha" name="GooglePlayGamesABI">[https://developer.android.com/games/playgames/start#playbility-architecture Google Play Games ABI Architecture support].</ref> | |||
|{{Dunno}} | |{{Dunno}} | ||
|{{Dunno}} | |{{Dunno}} | ||
|{{Dunno}} | |{{Dunno}} | ||
|- | |- | ||
| colspan="2" | [https://web.archive.org/web/20180507120451/https://developer.android.com/ndk/guides/abis#sa armeabi] | | colspan="2" | [https://web.archive.org/web/20180507120451/https://developer.android.com/ndk/guides/abis#sa armeabi] | ||
| colspan="7" | armeabi and MIPS support deprecated in [[Compatibility layer|libndk translation layer]] version r16 and [https://android.googlesource.com/platform/ndk/+/master/docs/Roadmap.md#ndk-r17 removed in r17].<br | | colspan="7" |armeabi and MIPS support deprecated in [[Compatibility layer|libndk translation layer]] version r16 and [https://android.googlesource.com/platform/ndk/+/master/docs/Roadmap.md#ndk-r17 removed in r17].<br>But [[Compatibility layer|libhoudini translation layer]] still supports it? | ||
|- | |- | ||
| colspan="2" | [https://developer.android.com/ndk/guides/abis#v7a armeabi-v7a]<br | | colspan="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|preservation]] reasons.<br> Older applications and games often rely on the [[Wikipedia:ARM_architecture_family|ARM 32-bit (Cortex)]] architecture, which isn't used in newer hardware.</small> | ||
|{{Dunno}} | |{{Dunno}} | ||
|{{Ya}}||{{Dunno}} | |||
|{{Dunno}} | |{{Dunno}} | ||
|{{Dunno}} | |{{Dunno}} | ||
|{{Dunno}} | |{{Dunno}} | ||
|{{Dunno}} | |{{Dunno}} | ||
|- | |- | ||
| colspan=2 | [https://developer.android.com/ndk/guides/abis#x86 x86] | | colspan=2 | [https://developer.android.com/ndk/guides/abis#x86 x86] | ||
|{{Dunno}} | |{{Dunno}} | ||
|{{Ya}}<ref group= | |{{Ya}}||{{Dunno}} | ||
|{{Ya}}<ref group="lower-alpha" name=GooglePlayGamesABI></ref> | |||
|{{Dunno}} | |{{Dunno}} | ||
|{{Dunno}} | |{{Dunno}} | ||
|{{Dunno}} | |{{Dunno}} | ||
|- | |- | ||
| colspan=2 | [https://developer.android.com/ndk/guides/abis#86-64 x86_64] | | colspan=2 | [https://developer.android.com/ndk/guides/abis#86-64 x86_64] | ||
|{{Dunno}} | |{{Dunno}} | ||
|{{Ya}}<ref group= | |{{Ya|link=https://developer.android.com/games/optimize/64-bit#64-bit-emulator}}||{{Dunno}} | ||
|{{Ya}}<ref group="lower-alpha" name=GooglePlayGamesABI></ref> | |||
|{{Ya}} | |||
|{{Dunno}} | |{{Dunno}} | ||
|{{Dunno}} | |{{Dunno}} | ||
|- | |- | ||
! colspan="9" | [https://developer.android.com/develop/ui/views/graphics/opengl/about-opengl Supported APIs] | ! colspan="9" | [https://developer.android.com/develop/ui/views/graphics/opengl/about-opengl Supported APIs] | ||
|- | |- | ||
| colspan=2 | [https://registry.khronos.org/OpenGL/index_es.php#specs11 OpenGL ES 1.x]<br | | colspan=2 | [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|preservation]] reasons.</small> | ||
|{{Dunno}} | |{{Dunno}} | ||
|{{Ya}}||{{Dunno}} | |||
|{{Dunno}} | |{{Dunno}} | ||
|{{Dunno}} | |{{Dunno}} | ||
|{{Dunno}} | |{{Dunno}} | ||
|{{Dunno}} | |{{Dunno}} | ||
|- | |- | ||
| colspan=2 | [https://registry.khronos.org/OpenGL/index_es.php#specs31 OpenGL ES 3.x]<br | | colspan=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> | ||
|{{Dunno}} | |{{Dunno}} | ||
|{{Ya}}||{{Dunno}} | |||
|{{Dunno}} | |{{Dunno}} | ||
|{{Ya|link=https://www.youtube.com/watch?v=tfq4MsxaHZw&t=923}} | |||
|{{Dunno}} | |{{Dunno}} | ||
|{{Dunno}} | |{{Dunno}} | ||
|- | |- | ||
| colspan=2 | [https://registry.khronos.org/vulkan/#apispecs Vulkan 1.3]<br | | colspan=2 | [https://registry.khronos.org/vulkan/#apispecs Vulkan 1.3]<br><small>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>Vulkan releases are backward compatible with each other. | ||
|{{Dunno}} | |{{Dunno}} | ||
|{{Dunno}}||{{Dunno}} | |||
|{{Dunno}} | |{{Dunno}} | ||
|{{Dunno}} | |{{Dunno}} | ||
| Line 868: | Line 825: | ||
|{{Dunno}} | |{{Dunno}} | ||
|} | |} | ||
<references group= | <references group="lower-alpha"/> | ||
==PlayStation Mobile== | ==PlayStation Mobile== | ||
| Line 957: | Line 914: | ||
|None | |None | ||
|None | |None | ||
|Released | |Released in 2017 by Takara Tomy. The NEO Series are educational consoles only sold in Japan and appear to use a custom version of Android. Because it's still being sold, it's unknown how games will be made for it and when it will be discontinued. Information on how many units have been sold so far has not been released to the public. | ||
|- | |- | ||
|Nvidia Shield TV | |Nvidia Shield TV | ||
| Line 1,019: | Line 976: | ||
|None | |None | ||
| | | | ||
|} | |} | ||
| Line 1,111: | Line 1,067: | ||
==Notes== | ==Notes== | ||
<references group= | <references group="lower-alpha" /> | ||
[[Category:Android| ]] | [[Category:Android| ]] | ||
[[Category:Various emulation]] | [[Category:Various emulation]] | ||