Android Emulator for iPhone: What Actually Works in 2026

Updated Oct 12, 2026
Sid peering into a glass terrarium where a tiny green robot waves back at him

For years the honest answer to “is there an Android emulator for iPhone?” was no. Apple’s rules keep a real one out of the App Store, and an iPhone gives apps neither a hypervisor nor, by default, the JIT compilation an emulator needs to run at a usable speed. Anything in the App Store under that name was something else.

In 2026 the answer is a qualified yes — but not from the App Store, and not for everything. An open-source project called Husk runs real Android games from APK files on an iPhone, UTM can boot an Android system in a virtual machine, and cloud phones stream Android from a server. All three come with conditions. Here is what each one is, what it needs and what it actually runs.

The short answer

  • App Store “Android emulators” do not run Android on your phone. Apple’s rules do not allow it.
  • Husk is the closest thing to the real thing: it runs many 64-bit Android games natively, and boots full Android under emulation for the rest. It is weeks old, needs sideloading and JIT, and does not support Google Play sign-in or purchases.
  • UTM can boot an Android image as a virtual machine. It works, slowly, and is more of an experiment than a way to play.
  • Cloud phones run Android on a remote server and stream the screen. Nothing installs on your iPhone, and nothing works offline.
  • If you want one particular game, it almost always has an iOS version — which runs better than any of the above.

Why the App Store versions are not emulators

Apple’s App Review Guidelines rule out the core of what an Android emulator does. Guideline 2.5.2 says apps may not “download, install, or execute code which introduces or changes features or functionality of the app, including other apps” — and running an APK you picked is exactly that. Guideline 4.7 makes one exception: “retro game console and PC emulator apps can offer to download games.” A phone operating system is neither, and even approved emulators may not “extend or expose native platform APIs” to the software they run without Apple’s permission.

The other half is technical. Fast emulation translates code into native code on the fly — JIT — and on a stock iPhone iOS only allows that for an app with a debugger attached, which no App Store app has. That is why UTM’s App Store edition, UTM SE, ships a slower interpreter instead.

So what passes review under the name “Android emulator” is, in practice, a client that streams a phone from a server, an app that copies the look of Android’s home screen, or a developer tool that previews a layout. None of them will open an APK.

Husk: real Android games on iPhone

Husk appeared on GitHub in September 2026, published its first builds on September 13 and reached version 2.0 on October 11 — it is moving very fast and is very early. It is open source under GPL-2.0, and its own README puts the App Store out of reach: the licence alone rules it out, and so does the debugger it needs at runtime.

You add an APK, tap it, and the app opens full-screen. Behind that, Husk has two very different engines:

  • Translation layer. The game’s own 64-bit Android code runs directly on the iPhone’s processor, and Husk stands in for the parts of Android around it: the C library, the Java calls, graphics (OpenGL ES through ANGLE, Vulkan through MoltenVK), sound, touch and controllers. No Android system boots, so a game starts in seconds and its code is never emulated.
  • Emulation. A full Android system — LineageOS — boots inside Husk under QEMU. It runs what the translation layer cannot and lets you use Android itself, but the processor is emulated, and the README says plainly that this is much slower.

What runs on the translation layer

Games built on an engine Husk has a driver for: Unity, Unreal Engine 4 (through Vulkan), cocos2d-x, Godot 3 and 4, SDL2/SDL3 (including LÖVE games), GameActivity and NativeActivity (that covers Minecraft) and Rockstar’s engine for GTA: San Andreas. The project’s screenshots show GTA: San Andreas, Minecraft, Geometry Dash, Beach Buggy Racing 2, Subway Surfers and a Flappy Bird remake running. The 2.0 release notes claim “over 150+ games and apps” now run — the developer’s count, not an independent one.

What does not

  • 32-bit games. An APK needs 64-bit (arm64-v8a) code. Apple’s chips have not run 32-bit ARM code since the A11, so 32-bit-only APKs cannot run natively at all.
  • Ordinary apps written only in Java, with no game engine. They are not supported on the translation layer; the emulated Android is the route for those.
  • Google Play. Games see Play services as installed and signed out. Those that check for it start, but Play Games sign-in, cloud saves and in-app purchases do not work. Google Play services are not part of the emulated Android either; the developer’s answer in the issue tracker is Aurora Store for downloading apps, and that adding Google services would mean editing the firmware yourself.
  • More than one game at a time. One game runs per launch; you close Husk to switch.

“Runs” also does not mean “runs well” yet. The bug tracker shows what an early project looks like: Subway Surfers, one of the showcase games, hung on its loading screen for one user; another reports a Unity 6 game at about 24 fps; an iPhone 14 owner found the LineageOS setup crashing before it finished. Individual reports, not a verdict — but expect to try several games before one behaves.

JIT is the part that decides everything

Both of Husk’s engines need JIT, and on iOS that comes from a debugger. Husk can get it three ways, and walks you through each in Settings › JIT & Sideload:

  1. Built-in StikJIT (iOS 26 and later). Husk turns JIT on itself, with no second app — it needs LocalDevVPN and your iPhone’s pairing file. On iOS 27 it can create the pairing on the phone itself, from Settings, with no computer.
  2. StikDebug, installed alongside Husk.
  3. TrollStore, on iOS versions before 26 only. From iOS 26, only a debugger can grant JIT.

Husk itself needs iOS 16 or later, and installs from its own source in SideStore or AltStore, or as an IPA from the GitHub releases page. That install method matters: a debugger can only attach to an app signed with a development certificate, which is what SideStore uses. If StikDebug or the pairing file gives you errors, we have a page on every common StikDebug error and its fix, and the setup from scratch is in how to enable JIT on iPhone.

Sid frowning at a puzzle piece that does not fit the puzzle board in front of him

UTM with an Android image

UTM is a general-purpose virtual machine app built on QEMU — the same tool people use to run Windows or Linux on an iPad. It can boot an Android system too. Interesting detail: Husk’s emulation mode is built on UTM’s own fork of QEMU, so the two share an engine. The difference is packaging. Husk ships an Android image and shows one app full-screen; in UTM you build the virtual machine yourself.

UTM on iPhone
UTM
virtual machines on iPhone · QEMU-based
GET

Two things limit it:

  • JIT, again. Full UTM “works with JIT when sideloading,” in its own documentation’s words, and may need a separate enabler such as StikDebug. Without JIT you are on UTM SE, the App Store edition, which uses an interpreter and, per the same docs, “will run much slower.” UTM SE does include the ARM and x86 systems an Android image needs.
  • No hypervisor. Apple does not give third-party iOS apps its virtualization framework, so the whole processor is emulated in software. Even for an ARM Android image on an ARM iPhone, Husk’s architecture notes warn to expect “a large constant-factor slowdown against native.”

Most guides reach for Android-x86 images. On an iPhone that adds a second layer of cost: an x86 system on an ARM chip means translating every instruction between architectures. Android-x86’s newest release is still Android 9 Pie; Bliss OS, a fork of it, carries newer Android versions. Either way, treat it as an experiment — fine for poking around Android’s settings, not for playing anything.

Cloud phones: Android on someone else’s server

The third route does not run Android on your iPhone at all. A cloud phone service keeps an Android device — real or virtual — in a data centre and streams its screen to an app or a browser on your phone, sending your taps back.

That makes it the only option that needs no sideloading and no JIT, and it is typically what App Store “Android emulators” turn out to be. The trade-offs come with the design:

  • Latency. Every tap travels to the server and back. Menus are fine; fast games feel it.
  • Always online. No connection, no Android.
  • Usually a subscription.
  • Your accounts live on their device. Signing into Google or a game on a cloud phone means handing that login to the service’s server — worth a thought before you do it.

If you only want one game

Look at the list of games Husk can run — Subway Surfers, Minecraft, GTA: San Andreas, Geometry Dash — and they share something: every one of them has an iOS version. Running the Android build through a translation layer, with no Play sign-in and a fresh bug every few games, is a fascinating project. For actually playing, the native iPhone build is faster, uses less battery and keeps your progress.

Subway Surfers on iPhone
Subway Surfers
endless runner · free store & IAP · custom jump height
GET

Version 3.70.0 in our catalogue comes with the store and in-app purchases free, character outfits unlocked, a custom jump height and a no-clip mode. More on what it unlocks in our Subway Surfers mod guide.

Minecraft on iPhone
Minecraft
the full game · Xbox sign-in fixed · 1.26.52
GET

Minecraft is one of Husk’s showcase games, but on Husk the Android version cannot sign in to anything Google. The iOS build in our catalogue, version 1.26.52, has Sign in with Xbox fixed, so account login works properly again.

Grand Theft Auto: San Andreas on iPhone
Grand Theft Auto: San Andreas
the full mobile port · 2.2.21
GET

GTA: San Andreas is the headline screenshot in Husk’s README — and Rockstar’s mobile port has been on the iPhone for years. Version 2.2.21 installs as the regular game.

All three install from Safari in one tap and stay signed for as long as your subscription runs — no seven-day refresh, no pairing file. Register your iPhone at builds.io first; most devices are ready within a day, and some take up to three while Apple processes them, once.

FAQ

Can I install APK files on an iPhone? Not directly — iOS cannot open them. Husk is the most developed way to run an APK on the phone itself, and it needs sideloading plus JIT.

Is there an Android emulator for iPhone without JIT? Not a usable one. UTM SE runs without JIT through an interpreter, which is far too slow for games. Husk needs JIT for both of its modes.

Can I run the Play Store version of a game I already bought? You can add its APK to Husk, but purchases and Play Games progress tied to your Google account will not carry over. If the game exists on iOS, that version is the reliable way to play it.

Is Husk safe? It is open source, so anyone can read and build the code, and it installs from its own GitHub source. Like any app this new, expect crashes — and back up game saves (Husk can export them to a .zip) before you update. For other emulators that live outside the App Store, see the best iPhone emulators you can’t get from the App Store.