Android Emulation on L4T Ubuntu LTS - Possible?

Hello All,

Waiting patiently for my Nano to arrive.

I was just wondering what you guys think about android emulation on the Nano.

Is it possible in L4T Ubuntu? would the GPU performance be any good?

Just curious :-)

Thanks,
Chris.

Hi Chris,

There isn’t official Android support planned at this time, if there is interest perhaps an ecosystem partner would take a look.

Thanks

Thanks for the reply,
What I mean is android emulation within Linux on the nano not an android port for the nano.

I believe there are already android emulators built for Linux, I’m just curious if they would run on Linux for arm64 and if so how well.

Specifically on the Nano.

Thanks again!

You mean the android emulator like the one shipped with Android Studio? That relies on x86 hardware virtualization technology to work (intel haxm, amd equiv?), so it won’t work on an arm64 based board like the Nano. You can google around to see if there is a port of android emulator to arm64 that you can build for nano, but I’m not finding much on a google other than this stale question on stackoverflow.

So I did find this:
https://android.googlesource.com/platform/external/qemu/+/gradle_0.14.4/docs/BUILDING.TXT

If you’re willing to build qemu from source and do a lot of build wrangling, it might be possible to run android apps slowly, but I don’t think hardware virtualization is available in Linux on Nano (edit: and a check of /proc/cpuinfo would seem to confirm this).

Ah ok thanks, so they run as a vm.

Yes, but with some special cpu extensions that make it run very quickly. Without those, vms are painful unfortunately. I did start a new thread asking about whether the Nano is capable of hardware virtualization within linux. If if’s a matter of recompiling the kernel, that’s simpler than changing the way the whole thing boots if the hardware is even capable at all.

Well I guess it would be easier to figure out if hardware virtualization in general is possible on arm64.

It’s possible. My understanding is the chip has to support it and the board has to be set up to allow it as well.

Pi 3 is arm64 for example but since there is no access to EL2 (see link) things like Xen Arm can’t be run. From what I gather from skimming the docs, Nano drops to a lower execution level but the time it boots the Linux kernel so it can’t do certain things. The boot configuration would have to change, I think, but that’s just guessing. I haven’t seriously researched what would be required.