Recently, I encountered a very interesting issue while trying to install one of the new builds of Vanadium which I’ve built myself.

Upon building Vanadium, it outputs three APKs - WebView, Library and the Browser itself.

The Android phone was running a custom Evolution X ROM, but I suppose it should apply to many other AOSP ROMs.

The ROM was on an old update and Vandadium was running version 134 (latest as of this writing is 143). The OS filesystem layout (?) seems to have changed. While trying to install Vanadium, I remember the pre-requisite, that is the Trichrome Library APK. I tried to install the latest version of the Library but it kept giving error and saying conflict. This looks like it has an existing installation, so I went into App Settings to find the exisiting installation so that I could uninstall. Turns out I can’t find it. Weird. I downloaded the open source App Manager but couldn’t find it too. What?? Why is it hidden?

To debug, I used the App Manager installation to install and it provided me with some verbosity. The error says signatures do not match newer version. I thought it was signature issue and it is. The APK installation was supposed to update it but I guess the build I did used a different signature since it was a CI/CD method of pre-generating on the fly. Gotta change this part of the code soon.

The solution was to uninstall the old version and install the new one. But since I can’t find the package or app in Settings, I had to use adb. Using App Manager install method, the error message shows the package that is conflicting. Funny enough, it has app.vanadium.trichromelibrary_<random number>. That <radom number> is the strange one. Turning on USB debugging, then run adb uninstall app.vanadium.trichromelibrary_<random number> fixes it. Had to uninstall the existing Vanadium since it was using the library.