Apply patches to Moovit APK, for educational purposes only.
DISCLAIMER: This project is not affiliated with Moovit.
This project is intended for educational and informational purposes only.
| Feature | Availability |
|---|---|
| Live Location enabled | ✅ |
| Ads disabled | ✅ |
| Signature Verifier Bypass | ✅ |
| Disable Taxi suggestions | ✅ |
| Remove "Join and Pay with Moovit" section | ✅ |
| Moovit+ enabled | ✅ |
| Analytics disabled | WIP |
- Python3
- Java
- Google Maps SDK API key
The custom key is only needed to render the map tiles. Those are drawn by
Google Play Services (the official Maps SDK), which derives the
X-Android-Cert header from the installed app's signing certificate.
A value the app itself cannot set, so the re-signed APK is rejected with the original
key and must use your own.
- In Google Cloud Console, create a project and attach a billing account. Maps Platform requires billing, though there's a free monthly allowance.
- Under APIs & Services → Library, enable:
- Maps SDK for Android
- Under APIs & Services → Credentials, choose Create credentials → API key.
git clone https://github.com/Tom-stack3/moovit-patcher.git
cd moovit-patcher
python3 -m venv venv
source venv/bin/activate
pip install -r requirements.txtCUSTOM_GOOGLE_API_KEY="<your Google API key>"
python main.py -p ./moovit.apk -o moovitpatched.apk -gakey "$CUSTOM_GOOGLE_API_KEY"With exactly one device or emulator connected (adb devices), install and launch the patched APK:
python -m unittest tests.test_app_launch- WhatsApp Patcher by @Schwartzblat
- Took a lot of utils from this code. Thank you!!
Ideas and contributions are always welcome. Please open an issue first for discussion.