Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Skip to content

Draft: Set installer to FakeStore "com.android.vending" if origin is GPLAY

Sayantan Roychowdhury requested to merge 2237-gplay_apps_installer_fakestore into main

Description

Set installer package name to FakeStore (com.android.vending) for apps fetched from Google Play store. For other apps, no changes are made (App Lounge is the installer).

Both FakeStore and App Lounge MUST be compiled with the same certificate!

Issue(s)

https://gitlab.e.foundation/e/backlog/-/issues/2237
e/backlog#3666 (closed)

Test environment

Gradle build against 2237-gplay_apps_installer_fakestore branch, install the apk into the device

Test procedures

Open App Lounge -> Settings -> Show all apps.
Now download any app which are fetched from Google Play store (prime example will be Google's own apps).
Open the app -> Click Recent apps button -> long press app icon -> click App info -> click Advanced.
Under "STORE" it should say "App installed from FakeStore"

Technical details

Initially it seemed calling setOriginatingUid() on PackageInstaller.SessionParams would do the job. But on testing it found it does not work.
Had to call PackageManager.setInstallerPackageName() after the app has been completely installed.

Screenshots

Screenshot_from_2022-04-04_20-05-39

Check list

  • Self review
  • Test procedure explained
  • Tested on fresh install
  • Tested applied as an update
  • License
  • Internal documentation
  • User documentation

Merge request reports

Loading