Android support does not start in 4.3.0 on XA2

REPRODUCIBILITY (% or how often): Always
BUILD ID = OS VERSION (Settings > About product): 4.3.0.12
HARDWARE (XA2, X10, X10 II, …): XA2
UI LANGUAGE: English
REGRESSION: (compared to previous public release: Yes, No, ?): Yes

DESCRIPTION:

Android support does not start. Tapping the “Start” button in the settings menu makes it flash very quickly, but the state does not change (the “Stop” button remains grey and unresponsive).

Trying to start an android app gives the usual message about starting android support, but the app icon looks like it’s loading for a while, and then disappears. Attempting another app give the same message about starting android, and the same result (i.e. none).

PRECONDITIONS:

None

STEPS TO REPRODUCE:

  1. Install 4.3.0 update, removing packages as instructed.
  2. Start phone
  3. Try to start android

EXPECTED RESULT:

Android support becomes active

ACTUAL RESULT:

Android support does not become active

ADDITIONAL INFORMATION:

Trying to start an app (firefox) I see the following in the log:

%<-----------------------------------------------
Nov 18 22:19:22 Sailfish invoker[13013]: warning: PRIVATE CONNECTION 0x3bc2f0 CONNECTED
Nov 18 22:19:22 Sailfish invoker[13013]: warning: PRIVATE CONNECTION 0x3bc2f0 DISCONNECTED
Nov 18 22:19:22 Sailfish mozilla.firefox.apk[8408]: warning: PRIVATE CONNECTION 0x101498 CONNECTED
Nov 18 22:19:22 Sailfish mozilla.firefox.apk[8408]: warning: PRIVATE CONNECTION 0x101498 DISCONNECTED
Nov 18 22:19:22 Sailfish lipstick[4508]: Launching Android Intent android.intent.action.MAIN org.mozilla.firefox/org.mozilla.firefox.App
Nov 18 22:19:22 Sailfish booster-generic[4398]: *** signal=17 pid=4398
Nov 18 22:19:22 Sailfish /usr/libexec/mapplauncherd/booster-generic[4398]: warning: Daemon: sending exit(0) to invoker(13013)
%<-----------------------------------------------

but trying to start android from setup adds nothing to the log.

There is a file /usr/lib/systemd/system/aliendalvik.service.d , but trying to start aliendalvik from command line gives

[root@Sailfish ]# systemctl start aliendalvik.service
Failed to start aliendalvik.service: Unit aliendalvik.service not found.

However, systemctl lists the “Aliendalvik integration service”, apkd.service, as loaded, active and running.

EDIT : Following workaround is only for revoked version of Defender for Xperia 10 II. See this post for more details.

Is it possible that you applied last revoked Defender’s update? If you’re using this revoked version, it has a small typo error breaking stuff.

Last update added missed a comma. You have to change to following content :

lxc.mount.entry = /system/etc/hosts system/etc/hosts none bind,ro 0 0

In the file /var/lib/lxc/aliendalvik/extra_config

Save this content and restart you’re phone.

Nope!

The XA2 is the arm version which was not affected by this typo.
Else I would have jumped in earlier :slight_smile:

@pherjung and your statement is not true.
It were only the i486/aarch64 packages affected for just a very short time.
You posted already the corrected mount string version which is right now out and working.
So defender -out in the wild- does not cause problems.

I don’t really know how systemd works, but I see that there is only the aliendalvik.service.d subdirectory, and no aliendalvik.service file. Perhaps I could add one, if I knew what it is supposed to contain. But I don’t know if the executable exists for the ExecStart entry (which I see in other .service files).

@pherjung The file /var/lib/lxc/aliendalvik/extra_config is empty

I looked in /var/log/systemupdate.log and there are multiple error messages from systemd about timeouts in apkd.service and failures to start Aliendalvik integration service.

I tried stopping and starting apkd.service. There is this error message

Nov 20 20:55:40 Sailfish apkd[31926]: [W] unknown:0 - Unable to write sharing file

perhaps I need to specify parameters somehow.

What about a simple uninstall, reboot, install?

Yes, I could try that. I was afraid it would remove my android apps. Some may be awkward to set up again, and thought I might try something else first. Thanks for looking at it!

I would not expect this to happen, but tbh I never did and do not know for sure.

But aliendalvik.service file is located in
/lib/systemd/system/

And did you try

systemctl status -l aliendalvik

Or even

pkcon search aliendalvik

The file /lib/systemd/system/aliendalvik.service does not exist (sorry if I was unclear about that). The commands you suggest give

[root@Sailfish nemo]# systemctl status -l aliendalvik
Unit aliendalvik.service could not be found.

[root@Sailfish nemo]# pkcon search aliendalvik
Available aliendalvik-1.1.0-1.2.1.jolla.armv7hl (aliendalvik) Android App Support
Available aliendalvik-configs-10.0.57-1.4.1.jolla.armv7hl (aliendalvik) Android App Support configurations
Installed aliendalvik-system-10.0.0.58.2.1-1.5.1.jolla.armv7hl (installed)Android App Support system image

So it seems to me the aptd service failed to re-install aliendalvik and aliendalvik-configs because of some timeout during the update to sailfish 4.3.0, whereas the image to be run does exist:

[root@Sailfish nemo]# pkcon get-files aliendalvik-system

Package files
/etc/gbinder.d/alien.conf
/opt/alien/build.prop
/opt/alien/system.img

So I did pkcon install aliendalvik, and systemctl start aliendalvik.service, and now my apps work! Thanks a lot for your help.