Catch up on stories from the past week (and beyond) at the Slashdot story archive

 



Forgot your password?
typodupeerror
×
Android Open Source

Anbox Can Run Android Apps Natively On Linux (In A Container) (anbox.io) 66

Slashdot user #1083, downwa, writes: Canonical engineer Simon Fels has publicly released an Alpha version of Anbox. Similar to the method employed for Android apps on ChromeOS, Anbox runs an entire Android system (7.1.1 at present) in an LXC container. Developed over the last year and a half, the software promises to seamlessly bring performant Android apps to the Linux desktop.

After installing Anbox (based on Android 7.1.1) and starting Anbox Application Manager, ten apps are available: Calculator, Calendar, Clock, Contacts, Email, Files, Gallery, Music, Settings, and WebView. Apps run in separate resizeable windows. Additional apps (ARM-native binaries are excluded) can be installed via adb. Installation currently is only supported on a few Linux distributions able to install snaps. Contributions are welcome on Github.

In a blog post Simon describes it as "a side project" that he's worked on for over a year and a half. "There were quite a few problems to solve on the way to a really working implementation but it is now in a state that it makes sense to share it with a wider audience."
This discussion has been archived. No new comments can be posted.

Anbox Can Run Android Apps Natively On Linux (In A Container)

Comments Filter:
  • If this could make is possible to run the app BankID, it would be awsome! (BankID is a used in Sweden to login to many websites like banks, drugstores, state websites, etc). The support for the desktop program for Linux ended a few years back, and since that, the mobile app is the only thing we GNU/Linux users can use.
    • Having used BankID myself, I can tell you that the Linux version never worked well, but neither did the Windows version (I had one of those Gemalto NCR1 card readers that you had to connect to your computer via USB). The Mobile BankID app is a big step back in security. The Norwegian BankID system is much better; you still have a hardware token with a PIN code, but you don't need to connect it to your computer.

  • I can't think of any android apps I'd like to run on Linux but I wish I could run Banshee on an android tablet; it's a pile of shit code-wise but i love the interface.

    Now back to your regular programming. ;)

  • at the moment.

    I loaded it into a VirtualBox Ubuntu 16.04 VM and ran into two problems. 1. is it doesn't properly start its background service after install. Once you start it the app will start up and display the list of Android apps. However launching one of these segfaults the whole thing.

    • Even if it's unstable, if I can play some of the games I bought a few years ago that would be brilliant. I've gone from having Android clamshells and tablets to phone only, so all I have left with a nice big screen are my Linux desktops. I do have Android TV but so few of my games run on it because of the intentional crippling Google has done to it.

    • it is already a container, and you are using virtual box to run ubuntu which is a container too, you have a container within a container, like those Russian dolls within dolls, i think it would be best to run a container up on a native system to not add layers of complexity to a system that is already complex on its own (plus its an alpha release and still not ready for prime-time) but i hope it does make good progress because i love both Linux and android
    • Should you really run this in VirtualBox? The post says it's a LXC container. Those should be run with LXC right? (https://help.ubuntu.com/lts/serverguide/lxc.html) That might be why they segfault? I have not worked with LXC so I don't know. Currently I have used VirtualBox and VMware to make virtual machine, but this week I left all that for QEMU/KVM to get a completly free software experience. Though from what I understand LXC is a much more light way approach.
  • ARM binaries (Score:4, Interesting)

    by Zaiff Urgulbunger ( 591514 ) on Saturday April 22, 2017 @05:46PM (#54284267)

    Additional apps (ARM-native binaries are excluded) can be installed via adb.

    What about if my Linux was running on an ARM cpu, e.g. on a Raspberry Pi?

    • Native CPU (Score:5, Informative)

      by DrYak ( 748999 ) on Sunday April 23, 2017 @06:39AM (#54286227) Homepage

      The summary is badly worded.

      you can install apps but they need to be

      either:
      - in android's architecture-neutral bytecode ("I can't believe it's not Java(tm) !")
      - in the same native architecture as your main OS, because there's no emulator, Anbox runs in a container, thus interecting straight with your current kernel.

      Currently supported architecture lists: AMD64 (obviously), but also ARMHF and ARM64.

      So you can install an ARM app, as long as you do it on a compatible Raspberry Pi, or Pyra, etc..

      But again, the whole thing is currently alpha. So for the next few months don't excpet much except a lot of crashes, specially if you're not running the same kind of configuration as most other testers.
      (You'll find way more bugs)

      • So it is basically Android x86 which is indeed an unstable pile of shit - unless ran on the hardware that the "owner" of the x86 project provides from a parallel commercial company he runs and in violation of the GPL doesn't release the customizations to the Linux Kernel that makes it stable.

        • by DrYak ( 748999 )

          So it is basically Android x86 which is indeed an unstable pile of shit - unless ran on the hardware that the "owner" of the x86 project provides from a parallel commercial company he runs

          I strongly suspect that most of the problems with android kernels are the hardware drivers : for the GPU, the wireless chips, etc.
          (because there aren't much kernel drivers which support android's unusuall ABI.
          Most free/libre linux kernel drivers use GNU/Linux's DRI API for graphics instead of Android's Flinger)

          Here the situation is a bit different :

          - in the special case of the GPU, anbox uses a facility which is normally used by the emulators (like QEMU) for accelerated emulated graphics.
          Graphics command a

  • Last time I checked, both Android and Chromebooks were already running the Linux kernel.
    • If you play close attention :
      on any user space that lacked Android support up until now.

      Anbox is a combination of 3 things :
      - an LXC container containing the Android userland
      - compiling android-only kernel extensions so the container can actually find them in the kernel (e.g.: Binder)
      - using a forwarder normally designed for the emulator that will forward a few things (like graphics). Because the container is isolated from nearly all hardware accesses.

      As long as your weird user-space can hangle this, you ca

  • by gravewax ( 4772409 ) on Saturday April 22, 2017 @05:57PM (#54284321)
    If it is running in a container that itself is running Android then it aint running fucking natively. still awesome news.
  • by FudRucker ( 866063 ) on Saturday April 22, 2017 @08:22PM (#54284783)
    there are some android apps i like and would enjoy running on a Linux desktop with a proper mouse & keyboard, for example SDRTouch with my SDRPlay software defined receiver would be much better than on a little bitty tablet, and hopefully using a mouse with it would make it nicer for adjusting the frequency or bandwidth and other stuff, good luck to the developers i hope this pans out to be a great program and improves both Linux and android
  • I have been waiting for something like this for a long time. Unfortunately I have no interest in "snap" nor *buntu. And having it in a container isn't really "running android apps natively on linux" although it might be close, depending on the container system used. https://en.wikipedia.org/wiki/... [wikipedia.org]

    Other Android-under-Linux setups never seem to be free, open, stable, reliable, and compatible (especially when dealing with a touchscreen and trying to deal with screen rotation). At least not that I have tr

    • Your comment at least prompted me to go look at Android-x86, they say they are working on 3d acceleration now. If they can get that together then they'll finally really have something.

  • 1. Cut a hole in a box
    2. Put your droid in the box
    3. Make Linux open the box
    And that's the way you do it!

THEGODDESSOFTHENETHASTWISTINGFINGERSANDHERVOICEISLIKEAJAVELININTHENIGHTDUDE

Working...