Linux – Why is compatibility with Android not a common feature in Linux distributions

androidlinux

Since Android is based on Linux (and I understand is only a Java layer on top of Linux), I wonder why Linux does not generally run Android applications.

Why is an Android compatibility layer, either with its own desktop or within X, not a standard feature of modern Linux distributions?

Best Answer

Android is based on the Linux kernel. That, and a very stripped-down BusyBox. All the rest of GNU/X11/Apache/Linux/TeX/Perl/Python/FreeCiv is not present on Android. Asking why Linux doesn't emulate Android is like asking why trucks don't emulate airplanes — after all they're both big vehicles with wheels at the bottom.

Most Android applications are specifically designed to handle the limitations of a portable device: limited computing resources, energy consumption paramount, small screen, no external input device. There are usually similar applications for PC-style computers, except for location-related applications which are generally not useful outside of a mobile device.

You can run Android applications in the emulator provided by Google. This is a developer tool, because the main application of running Android applications on a PC-style computer is to test them.

There is some work on systems that combine Linux with Android (such as Ubuntu for Android, but it's been abandoned), mainly running on intermediate-format devices (tablets), but also on smaller devices (phones) to allow users of mobile devices to run existing applications from the larger-format world. Since the two operating systems have mostly compatible kernels, it's possible to run the rest of the operating system side by side (that's easier than rewriting the Android libraries to work on top of Linux/X11 or vice versa). There are significant technical difficulties, however. Probably the biggest one is that the GUI operate on completely different software: Linux uses the X Window System like other unix variants while Android has its own stack.

Related Question