Signature Spoofing - UjuiUjuMandan/GmsCore GitHub Wiki
You need a ROM that supports signature spoofing. Some custom ROMs are patched to support signature spoofing out of the box, however most ROMs will require a patch or a Xposed module. Please ask your ROM developer if unsure.
The following ROMs have out-of-box support for signature spoofing.
- AospExtended: Must be enabled in Settings > Apps > Advanced (gear icon) > App Permissions > Spoof package signature
- ArrowOS: microG will ask for Signature Spoofing authorization
- CalyxOS: Bundled with microG
- CarbonROM: microG will ask for Signature Spoofing authorization
- crDroid: microG will ask for Signature Spoofing authorization
- /e/: Bundled with microG
- HarmonyOS
- iodéOS: Bundled with microG
- LineageOS (builds from 2024/02/26): Signature spoofing is enabled only for microG
- LineageOS for microG: Bundled with microG
- OmniROM 5: Must be enabled at the bottom of the developer settings first
- OmniROM 6/7: Must be enabled in Settings > Apps > Advanced (gear icon) > Additional permissions > Spoof signature
- MarshRom: Must be enabled in Settings > Apps > Advanced (gear icon) > Additional permissions > Spoof signature
Also there is another maintained list of custom ROMs that include the signature spoofing patch.
Xposed module
If you have the Xposed Framework installed, the following module will add support for signature spoofing: FakeGApps fork by whew-inc (for Android 4.0 - 15)
PS: If you need to install Xposed, you can find a still active open-source version of LSPosed here.
ROM patchers
As alternative, you can also patch your already-installed ROM using one of these methods:
- Using NanoDroid-patcher by Nanolx (for Android 4.1 - 14), without any computer interaction and it will auto-patch every updated ROM;
- Using Tingle by ale5000;
- Using Haystack by Lanchon (Haystack can, optionally, add a simple UI to control spoofing, similar to the one offered by OmniROM 5).
NOTE 1: Most patchers require that the ROM to be patched is NOT odexed.
NOTE 2: These patchers have not yet been updated with the latest changes of the signature spoofing patch needed to make microG work properly with recent apps (they still work properly only on Android < 9).
Source patches
If you are a ROM developer or just do custom builds for whatever reason, you can download and include the patch from here or here.
Once you've downloaded the correct patch for your build version, change to the frameworks/base
directory of your build tree and run patch -p1 -i "path/to/where/you/saved/the/patch"
, changing the path to the appropriate path of where you saved the patch file.
If it runs without error, your build will have signature spoofing enabled.
NOTE: These signature spoofing patches have not yet been updated with the latest changes needed to make microG work properly with recent apps (they still work properly only on Android < 9).
Verify signature spoofing
microG Services tests and diagnoses signature spoofing (only microG Services v0.3.36 or higher can accurately check this) but, unfortunately, it cannot be installed on devices that already have Google Play Services installed.
For testing on such devices you can use Signature Spoofing Checker instead.
Many modern ROMS, such as those based on LineageOS, now use a signature spoofing method that is tied to microG (only the officially signed one). Therefore 3rd-party signature spoofing testers will not accurately reflect the signature spoofing status on such ROMs; in these cases you can only use the Self-Check page of microG.
NOTE: Signature Spoofing Checker has not been updated since 2018, so it cannot check for the latest changes to the signature checking code made by Google, starting from 2024-11. Please ask your ROM maintainers if they have imported the changes necessary to fully support microG after these changes made by Google.