microg / GmsCore

Free implementation of Play Services
https://microg.org
Apache License 2.0
8.43k stars 1.71k forks source link

Unable to install GmsCore properly with Magisk and A/B system #1201

Open Minabsapi opened 4 years ago

Minabsapi commented 4 years ago

Device configuration

Device: Xiaomi Mi A1 ROM: AOSPExtended Android version: 8.1.0

Magisk version: 20.4

Description

I installed microG Services Core as well as microG Services Proxy. microG is fully set up (all checkboxes checked). However things do not work as expected, since even after signing in to a Google account an app requiring to verify a license fails, and Maps crash everytime.

Installation steps

My installation steps were rather unusual due to my device (equipped with A/B partitions) and Magisk's design.

Prerequisites

  1. Enable Signature spoofing It was supposed to work out of the box with my ROM, but installed the XPosed module for good measure, since I couldn't find where to enable the option with my version.
  2. Get rid of some packages This step took me way too much time. Removing the packages from /system/priv-app wasn't easy because of a lot of problems (unable to remount system to rw, thought dm-verity was interfering but it seems it didn't, successfully removing packages don't last after the reboot...). Had to install the Magisk module debloater to solve the issue.

Installing

  1. Install GmsCore.apk Same problem than previous step concerning /system/priv-app. I pushed it there as advised and the app didn't appear anywhere, and after a reboot it was removed. Solved the issue by installing GmsCore.apk as a user app then used the Magisk module systemizer to make it a "privileged system app".
  2. Install GsfProxy.apk This is the only thing that didn't bring any trouble.
  3. Reboot device I already rebooted my device an unholy amount of time because of the previous steps, did it after installing GmsCore (twice or thrice with different methods, only talked about the working one).
  4. Disable battery optimization Battery optimization was disabled only after the "systemization" automatically.

What could be wrong, and how should I fix this?

YigYag commented 4 years ago

I have a Mi A1 and I use the Magisk module called microG Installer Revived to install microG. I have no idea how to mount /system rw but luckily Magisk is systemless....

drrossum commented 4 years ago

Is there a /system/system/priv-app directory? If yes, try to install it there.

I have a Mi A1 and I use the Magisk module called microG Installer Revived to install microG. I have no idea how to mount /system rw but luckily Magisk is systemless....

-- You are receiving this because you are subscribed to this thread. Reply to this email directly or view it on GitHub: https://github.com/microg/android_packages_apps_GmsCore/issues/1201#issuecomment-701703432

Minabsapi commented 4 years ago

Update: Maps now works and was able to authenticate to the account I provided in microG settings (which is not really what I want, but perhaps I'll talk about it in another issue). It now stops working again after a reboot.

The only problem that still remains is that licensing apps still doesn't work. But I have no way to prove whether it's a microG issue or the app's which I used to test it with.

YigYag commented 4 years ago

@Minabsapi I believe licensing verification requires the app to be installed through Google Play Store which means you need to add a Google account. There is an app called Lucky Patcher that might work to remove license verification.

Nanolx commented 4 years ago

Lucky Patcher is/can be used for piracy, thus it's not recommendable, especially not recommending removing licese verification.

License verification can be achieved by using Google Play. If you want (in-app)-purchases aswell you need the patched Play Store included with NanoDroid ( or patch it yourself, though that's not straight-forward, see: https://gitlab.com/Nanolx/microg-phonesky-iap-support ).