Changes

Jump to navigation Jump to search

Android emulators

2,744 bytes added, 21:39, 22 January 2020
General Emulation issues: rewrite
':''This page is about emulating Android apps and games on PC as it is slowly building off an important library of exclusivesdesktops. For emulating specific platforms, and emulation coupled with CheatEngine is certainly interesting. If youwe're interested in ll usually list Android ports of emulators on the target platform's page; for example, a Game Boy emulator for your Android phone, check [[:Category:Consoles]] and see individual console would be listed at the Game Boy emulators page.'''
'''[[wikipedia:Android(operating system)|Android]]''' is a mobile operating system (OS) based on the Linux kernel and currently developed by Googleand the Open Handset Alliance. Unlike It was originally developed in secret before launching in 2008 as a competitor against Apple's [[iOS emulators|iPhone]]. While other mobile operating systems had been made throughout the years, none have emerged in terms of market share nearly as well much as older cell-phone models and older Japanese Galapagos mobile phones, emulating Android software on PC is more developed, though no open source emulator with a high degree of game compatibility exists yet.
Like 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 [[Nintendo DS iOS emulators|iOS]], the computer mouse is used to emulate touchscreen presses (which can are specially designed Zip files. They may be less than ideal in many casesoccasionally coupled with <code>OBB</code> files.)While Android can technically run Linux binaries, and the keyboard emulates the button controller add-onsdoing so requires superuser privileges that Android does not provide by default. Some emulators support X360 controllers 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 well with some more tweaksa 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 apps come in natively supports mice,<ref group=N>If you have an Android device you can confirm this by connecting a Bluetooth mouse or a USB mouse via a USB On-the -Go adapter.apk file format (occasionally coupled with .obb files). Just </ref> most apps expect users to have a touchscreen, so Android emulators will usually default to emulating touchscreen presses like its [[IOS Nintendo DS emulators|iOSDS emulation]] equivalent (IPA filesthough it can be less than ideal in many cases). The host's keyboard may often emulate the button controller add-ons, their innards can be opened and some emulators support [[Xbox 360 emulators|Xbox 360]] controllers as a regular ZIP filewell with some more tweaks.
==Emulators==
<div style="color:#000;background:#eef2ff;border:1px solid #b7c5d9;border-radius:8px;padding-left:1em;display:inline-block;padding-right:1em;">
'''Important Note:''' 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 was BlueStacks. 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 as much as possible giving sensitive account data (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.
</div>
{| class="wikitable" style="text-align:center;"
|+PC
|-
! scope="col"|Name
! scope="col"|OSPlatform(s)
! scope="col"|Version
! scope="col"|Free
! scope="col"|VM
! scope="col"|[[Emulation Accuracy|Accuracy]]
! scope="col"|Open-Source
! scope="col"|Active
! scope="col"|[[Recommended Emulators|Recommended]]
|-
! colspan="8"|PC / x86
|-
|[[Genymotion]]
|align=left|{{Icon|Windows, |Linux, |macOS}}
|[https://www.genymotion.com/download/ {{GenymotionVer}}]
|{{✓}} (Non-Dev Versions)
|VirtualBox
|High
|{{✗}} ||{{✓}} ||{{✓}}
|-
|[[BlueStacks]]
|align=left|{{Icon|Windows, |macOS}}
|[http://www.bluestacks.com/ {{BlueStacksVer}}]
|{{✓}}
|QEMU (before v2.5) / VirtualBox (after v2.5)
|High
|{{✗}} ||{{✓}} ||{{✓}}
|-
|MEmu
|align=left|{{Icon|Windows}}|[https://www.memuplay.com/ 7.0.18]|{{✓}}
|VirtualBox
|High
|{{✗}} ||{{✓}} ||{{✓}}
|-
|LDPlayer
|align=left|{{Icon|Windows}}|[http://en.ldplayer.net/ 3.6079]|{{✓}}
|VirtualBox
|High
|{{✗}} ||{{✓}} ||{{✓}}
|-
|Nox App Player
|align=left|{{Icon|Windows}}|[https://www.bignox.com/ 6.25.80.03]|{{✓}}
|VirtualBox
|High
|{{✗}} ||{{✓}} ||{{✓}}
|-
|MuMu App Player
|align=left|{{Icon|Windows, |macOS}}
|[https://mumu.163.com/global/download/en/index.html 1.1.0.2]
|{{✓}}
|VirtualBox
|High
|{{✗}} ||{{✓}} ||{{✓}}
|-
|Peak App Player
|align=left|{{Icon|Windows}}
|[https://www.peakplayer.net/ 1.2.5]
|{{✓}}
|VirtualBox
|High
|{{✗}} ||{{✓}} ||{{✓}}
|-
|XePlayer[[Anbox]]|Windowsalign=left|{{Icon|Linux}}|[httphttps://xeplayeranbox.comio/ 6.0.10Git]|Not an emulator (wine-like approach)|?|{{✓}}|VirtualBox|High{{✓}} ||{{✓}}
|-
|tiantian app player
|align=left|{{Icon|Windows}}|[http://www.ttmnq.com/en/ 3.2.78]|{{✓}}
|VirtualBox
|Mid
|{{✗}} ||{{✓}} ||{{✗}}
|-
|Andyroid
|align=left|{{Icon|Windows, |macOS}}
|[https://andyroid.net/ 0.47.226.1076.7]
|{{✓}}
|VmWare
|High
|{{✗}} ||{{✓}} ||{{✗}}
|-
|Android x86
|Multi-platformalign=left|{{Icon|Windows|Linux|macOS}}|[http://www.android-x86.org 8.1-rc2r3]|{{✓}}
|VirtualBox, VMWare (for 3d acc)
|Mid
|{{✓}} ||{{✓}} ||{{✗}}
|-
|Android Studio
|align=left|{{Icon|Windows, |Linux}}|[https://developer.android.com/studio/ 3.25.23]|{{✓}}
|QEMU
|Low
|<span title="Source-available"><sup>{{~}}|-|Anbox|Linux|[https:/</anbox.iosup></ Git]span> |{{✓}}|Not an emulator (wine-like approach)|?|{{✓}}|-!colspan="7"|Consoles|-|LineageOS|Nintendo Switch|[https://switchroot.org/ 15.1]|{{✓}}|based of the Nvidia Shield TV build of LineageOS|?|{{✓}}|-!colspan="7"|Abandoned/Discontinued
|-
|LeapDroid
|align=left|{{Icon|Windows}}
|[http://www.leapdroid.com/ 1.8.0]
|{{✓}}
|VirtualBox
|High
|{{✗}} ||{{✗}} ||{{✗}}
|-
|SmartGaGa
|align=left|{{Icon|Windows}}
|[https://www.smartgaga.com/ 1.1.523]
|{{✓}}
|VirtualBox
|High
|{{✗}} ||{{✗}} ||{{✗}}
|-
|AMI DuOS
|align=left|{{Icon|Windows}}
|[https://ami.com/en/tech-blog/farewell-amiduos/ 2.0.8.8511]
|{{✓}}
|VirtualBox
|Mid
|{{✗}} ||{{✗}} ||{{✗}}
|-
|ARC Welder<br /><small>(Google Chrome)</small>
|align=left|{{Icon|Windows, |Linux, |macOS<br/>Chrome OS|Web}}
|[https://developer.chrome.com/apps/getstarted_arc 50.5021.602.0]
|{{✓}}
|Original
|Mid
|{{✗}} ||{{✗}} ||{{✗}}
|-
|Droid4X
|align=left|{{Icon|Windows, |macOS}}
|[http://droid4x.haimawan.com 0.10.7]
|{{✓}}
|VirtualBox
|High
|{{✗}} ||{{✗}} ||{{✗}}
|-
|KoPlayer
|align=left|{{Icon|Windows}}
|[http://www.koplayer.com 2.0.0]
|{{✓}}
|VirtualBox
|High
|{{✗}} ||{{✗}} ||{{✗}}|-|XePlayer|align=left|{{Icon|Windows}}|[http://xeplayer.com/ 6.0.10]|VirtualBox|High|{{✗}} ||{{✗}} ||{{✗}}
|-
|Windroy
|align=left|{{Icon|Windows}}
|1.2
|{{✓}}
|Original
|Low
|{{✗}} ||{{✗}} ||{{✗}}
|-
|Shashlik
|align=left|{{Icon|Linux}}
|[http://www.shashlik.io 0.9.3]
|{{✓}}
|Original
|Low
|{{}}|-|Project Astoria|Windows 10 Mobile|Discontinued|{{✗}}|Original|Low|{{✗}}
|-
|Xamarin Android Player
|align=left|{{Icon|Windows, |macOS}}|[https://developer.xamarin.com/releases/android/android-player/ 0.6.5($)]|{{✗}}
|VirtualBox
|?
|{{✗}} ||{{✗}} ||{{✗}}
|-
|Windroye
|align=left|{{Icon|Windows}}
|2.9.0
|{{✓}}
|VirtualBox
|Mid
|?{{✗}} ||{{✗}} ||{{✗}}
|-
|YouWave
|align=left|{{Icon|Windows}}
|[https://youwave.com/ 5.11]
|{{✓}}
|VirtualBox
|Mid
|{{✗}} ||{{✗}} ||{{✗}}|-!colspan="8"|Consoles|-|LineageOS|align=left|{{Icon|Switch}}|[https://switchroot.org/ 15.1]|based of the Nvidia Shield TV build of LineageOS|?|{{✓}} ||{{✓}} ||{{✓}}|-!colspan="8"|Mobile / ARM|-|LineageOS|align=left|{{Icon|LinuxARM}}|[https://konstakang.com/ 16.0 <small>(Raspberry Pi 3/4)</small>]|Not an emulator (actual AOSP)|High|{{✓}} ||{{✓}} ||{{✓}}|-|[[Anbox]]|align=left|{{Icon|LinuxARM}}|[https://anbox.io/ Git]|Not an emulator (wine-like approach)|?|{{✓}} ||{{✓}} ||{{✓}}|-|Project Astoria|align=left|{{Icon|WinMobile}}|Discontinued ($)|Original|Low|{{✗}} ||{{✗}} ||{{✗}}
|}
 
The VM column describes what backend technology the emulator uses. Emulators labeled with "VirtualBox" sometimes needs the user to install [https://www.virtualbox.org/ Oracle VM VirtualBox]. Usually, it is installed automatically.
Setting up the emulator itself is not too hard, but a bit of tinkering is required to add the Google Play store and [http://forum.xda-developers.com/showthread.php?t=2528952 ARM processor emulation] (what you need essentially here to play the commercial releases) as well as [https://groups.google.com/d/msg/genymotion-users/JpO8HR39PR0/NpSkrnsB8d8J Xbox 360 controller support]. Not noob-friendly, but if you're experienced enough with Android to know your way around a rooted filesystem it shouldn't be too hard.
 
'''Note as of November 25th, 2019''': The above paragraph is outdated and ARM Emulation has been broken in Genymotion for a while, so you can't use ARM apps unless you get a really old version.
;[[BlueStacks]]
:An open-source project that aims to port the Android operating system to x86-based netbooks. Comes with Google Play and libhoudini (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 target and 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 be) a closed-source fork of Android x86, designed exclusively to be run on VirtualBox.
;[[Anbox]]
:A project that aims to run Android applications on Ubuntu distributions. Currently, it is on 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.
:A Microsoft-developed Android emulator for Windows 10 Mobile included in several insider previews. It could run [https://www.reddit.com/r/windowsphone/comments/3gaoct/android_apps_that_work_on_win10_right_now/ a few applications], though apps required Google Play Services did not run or had issues. This project was reportedly [http://www.windowscentral.com/microsofts-project-astoria-delayed discontinued] in November 2015 and [http://www.winbeta.org/news/microsoft-confirms-the-death-of-project-astoria-focusing-on-other-bridges-instead its cancellation was confirmed] on February 2016, so the emulator is not included in more recent versions of Windows 10 Mobile.
==General Emulation issues=====Lack of Release Notes and Update History informationGoogle apps===While some emulators such as Genymotion do have version history on their websiteAndroid is open source, most other emulators do not have such history pages, making but the Google Play Store has to be licensed from Google in order to incorporate it difficult to track updates as well as regressions. ===Emulator Conflict===Many emulators, such as Droid4x, Andyroid, Genymotioninto a build, including Play Services and Xamarin cannot co-exist on the same machine because they will uninstall each many otherGoogle apps. This That often means developers pay a fee that can be trickle back to the user in some form (either through adware, privacy-invading trackers, or by selling the emulator as a problem if one game runs only commercial product). Custom ROMs for real Android devices on one of these emulators 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 other games do not work on itOpen GApps Project].
===Google-related LibrariesArchitectural differences===Likely due to licensing issuesMany games often optimize and compile specifically for ARM processors, which prevents them from being executable on x86 CPUs, most even when using a project like Android -x86. Some emulators do not come with Google-related applications and related libraries preinstalled (Google Play Store, Play Services, Play Games clientlike BlueStacks have ARM emulation by default; in others like Genymotion, etc) and requires the user it is possible to install an ARM emulator manually install them. Many games verify the existence of Google-related components at the start and refuse to work if some or any of them are missing(though only on older versions as such functionality is broken in newer releases).
===ARM ApplicationsConflict===Most commercial games are developed and published only Many emulators like to uninstall each other for devices with ARM CPUs such as most smartphones and tabletssome reason. HoweverDroid4x, Andyroid, Genymotion, and Xamarin cannot co-exist on the PCs we regularly use contain x86 CPUssame machine without modifying their installers, so which can be a problem if one game works on only one of these emulators but other games cannot directly run. Some emulators like BlueStacks have ARM emulation by default, and in some others like Genymotion, it is possible to install ARM emulator manually. The ARM emulator requires Intel CPUs to work correctly and do not guaranteed to work with all games.
===Games with root/Custom ROMs/Emulator DetectionAntitamper protection===Many commercial In order to reduce cheating, many games refuse to run if they discover that the device is "has been rooted" (hacked to allow access to the deep portion of Android OS) in order to reduce cheating and pirating. If the emulator is comes rooted by default, it must be manually unrooted manually 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 are very take more aggressive that they measures to detect the presence of Custom ROMs (unofficial firmware) or Android emulators (like the ones listed in this page) by in the variety of ways like checking for the existence and or absence of system files in order to prevent the game from running in any unauthorized unverified environments. These games are very difficult or plain impossible to play on emulators without resorting to cracked versions of the games. Solutions exist, like using MagiskSU (bundled with the Magisk flashable zip) and hiding root on anything Google Play related or installed apps that check for it.
==Emulator Specific Issues==
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===
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)
 
==See also==
*[[Cellphone emulators]] - info on emulators for various feature phone/non-smartphone platforms.
*https://www.luckypatchers.com/ - Lucky Patcher APK's latest version
[[Category:Consoles]]
[[Category:Android emulators]]
 
==Notes==
<references group=N />
927
edits

Navigation menu