Full wipe of Android support?

Hi,

I have an XA2 Plus and Android support has stopped working; I have it set to not start at boot time, and if I go to the control panel and press the start button, the button will become disabled (as usual) but Android never starts, so the Start and Stop buttons are both disabled.

I would really rather not factory reset the phone, so I am trying various other things:

  • Uninstalled aliendalvik-control
  • Upgraded the OS to 4.3.0.12
  • Uninstalled Android support, rebooted, reinstalled

… none of these changed the behavior. Then I found https://talk.maemo.org/showpost.php?p=1406350&post linked in another post here, so I went to try that, but after uninstalling Android support from the Jolla store, none of that stuff exists on my phone anyway. I also deleted /home/nemo/android_storage for good measure.

BUT: despite Android support being removed, and all of the things noted above being gone, there are still icons for every Android app I had installed on the screen; if I long-press to remove them, of course nothing happens because Android support is not installed; if I tap one, it just launches Jolla store and shows me the Android App Support app. I tried re-installing Android Support at this point, but no improvement in the behavior.

Whenever Android support is installed and attempts to run, if I look at journalctl it’s a nonstop stream (1 line pair/second) of

Nov 09 14:24:06 Sailfish kernel: binder: 3003:3003 --> 0:0 transaction failed 29189/0, size 0-0 line 2149
Nov 09 14:24:06 Sailfish kernel: binder: 3032:3032 --> 0:0 transaction failed 29189/0, size 32-0 line 2149

… is there any way to resurrect Android support without wiping the phone? I looked on the forum for this ‘binder’ message and didn’t find anything useful.

One thing I see that might be useful:

[root@Sailfish aliendalvik.service.d]#  systemctl status -l -a aliendalvik
● aliendalvik.service - Alien Dalvik
   Loaded: loaded (/usr/lib/systemd/system/aliendalvik.service; enabled; vendor preset: enabled)
  Drop-In: /usr/lib/systemd/system/aliendalvik.service.d
           └─01-prevent-start.conf
        /etc/systemd/system/aliendalvik.service.d
           └─override.conf
   Active: failed (Result: exit-code) since Tue 2021-11-09 14:22:16 CST; 7min ago
  Process: 6257 ExecStopPost=/bin/su -c /bin/bash /home/sdunbind.sh (code=exited, status=0/SUCCESS)
  Process: 6169 ExecStopPost=/usr/sbin/stop-aliendalvik.sh (code=exited, status=0/SUCCESS)
  Process: 6162 ExecStopPost=/usr/libexec/lxc/lxc-net stop (code=exited, status=0/SUCCESS)
  Process: 6139 ExecStartPre=/bin/su -c /bin/bash /home/sdbind.sh (code=exited, status=1/FAILURE)
  Process: 6134 ExecStartPre=/usr/libexec/lxc/lxc-net start (code=exited, status=0/SUCCESS)
  Process: 6133 ExecStartPre=/usr/sbin/start-aliendalvik-preinit.sh (code=exited, status=0/SUCCESS)
  Process: 6130 ExecStartPre=/usr/bin/start-aliendalvik-preinit.sh (code=exited, status=0/SUCCESS)

… /var/lib/sailfish-device-encryption/encrypt-home does not exist (the directory exists, but is empty).

If I just run /usr/sbin/start-aliendalvik.sh from the console, I get

Waiting for hwservicemanager
Waiting for hwservicemanager
Error: 4
No status data could be sent: $NOTIFY_SOCKET was not set
info systemd again...

… and the last two lines repeat forever.

Any thoughts? What else can I delete?

Thanks!

Did you already try ‘devel-su zypper in -f Aliendalvik’?

I had not tried that yet. Interesting: I didn’t have zypper installed? So I installed zypper using pkcon, then used it:

[root@Sailfish nemo]# zypper in -f aliendalvik
Loading repository data...
Reading installed packages...
Forcing installation of 'aliendalvik-1.1.0-1.2.1.jolla.armv7hl' from repository 'aliendalvik'.
Resolving package dependencies...

The following package is going to be reinstalled:
  aliendalvik

1 package to reinstall.
Overall download size: 7.7 KiB. Already cached: 0 B. After the operation, additional 7.7 KiB will be used.
Continue? [y/n/v/...? shows all options] (y): y
Retrieving package aliendalvik-1.1.0-1.2.1.jolla.armv7hl                                                         (1/1),   7.7 KiB (  7.7 KiB unpacked)
Retrieving: aliendalvik-1.1.0-1.2.1.jolla.armv7hl.rpm ..........................................................................................[done]

Checking for file conflicts: ...................................................................................................................[done]
(1/1) Installing: aliendalvik-1.1.0-1.2.1.jolla.armv7hl ........................................................................................[done]

Rebooted, then tried to start Android support again; same behavior (still does not start Android support, same binder message in journalctl)

Another note: after some combination of uninstalls/reinstalls of Android support and rebooting, the icons for previously installed Android apps have disappeared! So maybe that’s progress? Android App Support still doesn’t launch (same log errors as before) but … something

zypper ref always helps too, (if you haven’t yet)…

Remove /home/.android and all Android support will be reset to zero.

Thanks for the reply @Levone1 ! Since i had to install zypper it went through the refresh process, but I tried it again (also zypper refs, just for fun) and then tried the force reinstall, no difference. It only installs the single package though, so I feel like there’s something wrong in a different package somehow.

If I attempt to launch Android support and watch journalctl while it’s doing it, I see a lot of SELinux errors, some scripts missing, it can’t find the SD card, and validate-user also has some issue. I am starting to think that resetting the phone is the answer :confused:

Hi @jameson thanks for the reply! I did try this; I used the list in https://talk.maemo.org/showpost.php?p=1406350&post and deleted (or confirmed empty):

/opt/alien
/home/.android
/home/nemo/android_storage
/data/system/dropbox [did not exist for me anyway]
/data/system/registered_services
/data/system/sync
/data/system/usagestats
/data/system/users
/data/app
/data/dalvik-cache
/data/data
/data/user

… this seemed to be thorough. I am starting to fear that after years of use, tampering, and updates, maybe it is just time to reset the device. I hope not! But if I do not find a solution by this weekend that is probably what I will do.

@elliott did you find a solution because I fear I have a similar issue.

Sadly no, I have not had a chance to re-install yet but Android is still broken :frowning:

You could give another try for the following commands to check for missing packages and to install these:

devel-su
pkcon refresh
version --dup

Then reboot and install aliendalvik again.
If version --dup installed some jolla packages, then your installation was missing some parts, that may cause issues.

Yes.

And just a wild guess (but worth to check):
issue

ssu lr

and check if there is an adaptation-common repository in the global section

My issue is fixed, it’s related to Defender II latest update there were a little bug that broke Android support: Defender app update (harbour-defender) - my very own ‘Sailfish Devember’ - #122 by petervandeninseln

pkcon install aliendalvik

did the trick for me. I don’t know why aliendalvik wasn’t installed - Android support has been working for a day or so after the last OS update (the one that brought in the libcrypto deprecation), so it must have been removed after that.

Installing it did the trick though (in fact all the android apps I’d previously attempted to start popped up after android support actually kicked in).