Skip to content

Upgrade Play Store

steadfasterX edited this page Sep 16, 2024 · 15 revisions

About

AXP.OS will ship the latest (stable) Play Store during its regular OS builds but if you do not want to wait you can update the play store manually as well.

Download & install

AXP.OS users

  • browse to the Release page
  • expand "Assets" at the release you want to install
  • download the latest "Phonesky_AXP-OS-signed.apk"
  • install it via e.g. adb install Phonesky_AXP-OS-signed.apk
  • verify the version via App info

note: you can install only the -signed variants on AXP.OS as these are signed with the AXP.OS key. any other Play Store (e.g. downloaded elsewhere) will be rejected and can't be installed on AXP.OS.

non-AXP.OS users

If you want to use this Play Store version on any other OS then AXP.OS you are in general free to use the signed or unsigned variant - while it is strongly recommended using the signed one.

The process is slightly different then though, please follow the README for the how-to.

In general that should work fine while it is not tested nor supported by AXP.OS.

disable failing "Update Google Play services" notification

see: here

building Play Store (devs only)

This is for OS builders/developers only and shows the simple process of providing a new Google Play Store release which is compatible (i.e patched) with microG.

Requirements

See https://github.com/AXP-OS/packages_apps_phonesky/blob/axp/README.md

Automatic (CI/CD)

New builds will be created when there is a new version available. The check for this happens once per week.

The implementation is here and will basically:

  1. download latest play store APK
  2. patch the play store
  3. sign the resulting APK
  4. commit the differences to the main repo
  5. scan the resulting (signed + unsigned) APKs by VirusTotal
  6. create a pre-release including the VirusTotal link results

Additional manual tasks:

Once in a while the AXP.OS Team will take one of these pre-releases and tests them. If that wents fine a pre-release will be set as a regular release.

Manual process (legacy)

this is left here for historical reasons since the CI/CD approach was fully working

  1. grab the patcher repo: git clone https://github.com/AXP-OS/packages_apps_phonesky/ phonesky
  2. Get the latest Google Play Store release from a trustworthy source. Ensure it is:
    • Android 5+ and
    • universal
  3. You HAVE TO scan it by virustotal.com regardless where you fetched it from.
  4. save that APK in the same folder where you cloned the patcher repo from step 1
  5. start the patcher: APKTOOL_FLAGS=" --use-aapt2" ./patch-playstore <apk-name>
  6. Check the output, if all went fine test the APK:
    • login to google
    • tap through settings
    • check if you can update an app
    • check if you can install an app
  7. If all checks went fine upload the created _zipaligned APK as a new release to https://github.com/AXP-OS/packages_apps_phonesky/releases
    • add the virustotal result link from step 3 to the release page
    • scan the patched Phonesky APK with virustotal.com and add that result link to the release page, too
    • add and commit the patch diff to the phonesky repo
  8. Add the release version in extendrom

Troubleshooting

Out of Memory

If you get an error like "Exception in thread "main" java.lang.OutOfMemoryError: Java heap space" you have to adjust /usr/bin/apktool:

javaOpts="-Xmx6g"

APK does not build

Start the patcher in DEBUG mode like this: DEBUG=yes APKTOOL_FLAGS=" --use-aapt2" ./patch-playstore <apk-name>