Can I run Android apps on Ubuntu?

You can now under Chrome run APKs, using this extension (bearing in mind it is in development for use by developers for testing apps). Here are some steps I did to get it to work

  1. Install from here - click 'Add to Chrome'

    This will take a while as it seems to download a crx installer weighing in at 113Mb, and another one at around 9Mb, so be patient: enter image description here

    N.B. on my Fedora 21 build of Chromium 40 I got the error 'Manifest file is invalid' when trying install the extension, even after clearing data and reloading the extension. I also had issues with Ubuntu 14.04's build of Chromium 41, so I installed Google Chrome :( and that worked.

  2. Get a APK of the application you want to use - no, it does not seem like you can install from Google Play, you need a APK file of the app, so this is the tricky bit.
    Most closed source devlopers don't want their stuff freely distributed, so for most apps on Google Play at least you either need to use:

    • Use a APK for a open-source app - for testing this I tried using the x86 APK for VLC Media PLayer, which resulted in a error screen - I then tried the armv7 arc version and that worked at first and then crashed.
    • Get a APK from a Android device - this easily easily be done on some rooted Android devices, on normal devices I think you can copy system app's apks from /system/apps or somewhere - again not recommended due to legal stuff.
    • Use a third-party service/repository of APKs - e.g. this article suggest this one, but the issue here is that you may be downloading modified or infected programs/files. Probably should be considered a last resort.
    • Use a third-party extension - e.g. this one that pretends to be a device and downloads (not a good idea if you like legal stuff, plus google tracks your every move (mainly when signed in) so may be found out pretty quick... Dead as out of date on both browser and likely android support. It isn't recommend to install extensions not in browser's extension store anyway!
  3. Install it

    Now we get to the more fun bit of trying it out. Go to the Apps thing in chrome (or type chrome://apps in the URL bar) and launch Arc Welder. Then choose the directory the APK is in and then the APK, then choose 'Launch App' in the window.

    If the window shows the app icon as one that looks like this:
    folder with system gear icon on it
    the app probably won't work so their may not be much point in continuing. This seemed to happen alot with apps for Android 4.4+...

  4. Use it

    I managed to get QuickOffice to run and mostly work under the extension, though I couldn't save any documents as it was not happy about choosing the place to save the file (showing a folder selection box, not a file selection box for saving :P ) enter image description here

    After you press 'Launch App', the extension automatically adds a entry to the apps page on Chrome - this you can make into a standalone application launcher to launch the app directly from your app menu/dash/launcher - this is possibly the best feature of this extension as integrates with the desktop and you don't need to launch a emulator etc first.

    Overall this is brilliant, considering this probably is still in development and not designed for this it works quite well.

Sources:

  • Getting Started with ARC
  • Android apps to run on Windows, Macs and Linux
  • Test Android apps in Chrome OS, Windows, OS X, or Linux using ARC Welder Chrome app

Alternatively you can use a emulator as suggested in other answers - I did have some success using Genymotion (there were some handy instructions here, but this answer may help). Android Emulator can be got as part of the Android Studio SDK, however since Android Nougat apps should be signed.


The straight answer is no you can't. Although Android apps are developed in Java and thus should work, the environment is completely different:

  • Screen size is limited, the concept of a "Windowing System" does not exist in a mobile
  • Some of the hardware simply isn't there, SIM card, GPS, etc

There's an emulator that fools the apps by giving them those extra bits they need. But it uses the native OpenJDK on your machine so they will run well. Think of it like a test environment and not an emulator.

Anyway if you idea is running Layar in your laptop, forget it, it doesn't make any sense at all.