We have moved to a new Sailfish OS Forum. Please start new discussions there.
3

XA2 Android 8.1 ART or DALVIK [answered]

asked 2019-04-08 05:22:25 +0200

GD gravatar image

Question for those that know.

Is the Android subsystem the new Android RunTime or old Dalvik style JIT?

Thanks.

edit retag flag offensive reopen delete

The question has been closed for the following reason "the question is answered, an answer was accepted" by GD
close date 2019-04-09 02:08:42.438667

Comments

AFAIK Android cannot run on Dalvik since 5.1. Add the 30% speed increase advertised for Sailfish 3 and you can be pretty sure that it's running on ART.

Giacomo Di Giacomo ( 2019-04-08 10:03:27 +0200 )edit

I was assuming it would br for the very reasons you mentioned, but most documentation still references dalvik, hence after a confirmation. Thanks

GD ( 2019-04-08 13:39:02 +0200 )edit

1 Answer

Sort by » oldest newest most voted
12

answered 2019-04-08 21:48:27 +0200

DrYak gravatar image

Unlike the older 4.x compatibility layer used in devices before XA2 (which used a JIT just like their android counter-part) the new 8.1 compatibility layer used in XA2 runs executable in a container (just like ART runs executables (compiled in addvance) directly on the smartphone CPU).

The Dalvik name is probably a "left over" :

  • Jolla licensed the tech from Myriad to continue developping it, if I remember correctly (Jolla official have mentionned it on some community meetings, I think)
  • Some tiny part might still be used, I think mostly the parts used to make stuff available to the virtualised android environment

    (that's where the input of Jolla's employee would be helpful: probably the things that forward contacts and calendars from Sailfish native to android? likely also the input forward masquarading a physical keyboard in android? perhaps also other bits used to forward the display from android back to sailfish? I'm not really sure, we need the official to add information)

So in short :

  • Yes it's still called "Alien Dalvik".
  • Nope it's doesn't run on Myriad's JIT, it's running ART inside a container.

For the curious :

  • the full blown ART-based AOSP is in /opt/alien/system.img - that's a SquashFS image that gets mounted when the container starts.
  • the config file to the LXC container is in /var/lxc (like LXC on any other GNU/Linux system...)
  • the rest of the android data is in /home/.android/ - like on Xperia X
  • UNLIKE the older compatibility layers, /home/nemo/android_storage DOES NOT hold the user data. It's in /home/.android/data/media/0/ (similar to real Android system) and gets FUSE mounted into android_storage.
  • But the layer is still able to use data in /home/nemo/android_storage for backward compatibility reasons: it will get copied back into place before starting the container. (See: /usr/bin/start-aliendalvik.sh )
edit flag offensive delete publish link more

Comments

1

Thanks for this in-depth answer.

I had assumed it was ART in a container, just really wanted it confirmed. This milestone of getting past 4.4 was a big one. (If only I didn't need android apps.)

GD ( 2019-04-09 02:10:56 +0200 )edit

Question tools

Follow
4 followers

Stats

Asked: 2019-04-08 05:22:25 +0200

Seen: 954 times

Last updated: Apr 08 '19