microG Services icon

microG Services

by microg · Apache-2.0 · open source

Free · Android 4.4+ · System Tools

An open-source stand-in for Google Play services, for custom ROMs without Google’s apps. It handles push notifications, location and Google sign-in for the apps that need them.

Needs:A custom ROM that supports microG · Android 4.4+

3 trackers in the code File matches GitHub’s published hashOfficial GitHub release

2113 Apps is independent, not affiliated with or endorsed by microg. Official sources: microg.org · source code on GitHub.

Download APK · 108.1 MB v0.3.17.252432 · checked
Version
0.3.17.252432
Size
108.1 MB
Requires
Android 4.4+
Updated
2026-09-29

Introduction

microG Services, also called GmsCore, is an open-source replacement for Google Play services, the part of Android that apps call for push notifications, location, Google sign-in and maps. It is made by the independent microG project, not by Google, and it’s meant for phones that run without Google’s apps.

It doesn’t install on an ordinary phone that has Google Play services. It uses the same package name as Google’s app, com.google.android.gms, so that apps find it, but it is signed with microG’s key, so Android refuses to install it over Google’s. microG’s wiki puts it plainly: it “cannot be installed on devices that already have Google Play Services installed”.

Which phones it works on

microG needs signature spoofing: the system has to let microG present itself as Google’s app to the apps that call it. microG’s wiki lists ROMs that support it, among them:

  • LineageOS, in builds from February 2024, where signature spoofing is “enabled only for microG”. LineageOS checks that the package is “signed with microG release keys”, so only microG’s own signed file works there, this one included; a rebuilt copy doesn’t.
  • CalyxOS, /e/OS, iodéOS and LineageOS for microG, which come with microG already installed.
  • crDroid, ArrowOS, AospExtended, OmniROM and others listed in the wiki.

Huawei phones running EMUI or HarmonyOS use a separate -hw build, distributed through Huawei AppGallery. It isn’t this file.

What it covers

From microG’s implementation status page, which is older than this version, so take it as approximate:

  • Push notifications (Firebase Cloud Messaging): full support. Apps that use it have to be installed after microG.
  • Location, including Google’s fused location: full support. You choose an online service for Wi-Fi and mobile-network location; see below.
  • Google account sign-in: partial.
  • Maps, drawn with Mapbox: mostly works, with minor glitches.
  • Security keys and passkeys (FIDO2), Exposure Notifications, SMS code reading, Play Asset Delivery: mostly or fully.
  • Play Integrity and SafetyNet: “Mostly” (see the questions above).
  • Not intended: analytics, Firebase Analytics and mobile ads.

Its settings include a Self-Check screen that tests whether the system supports signature spoofing, whether microG has it, and whether battery optimisation is off. microG’s setup guide asks you to turn battery optimisation off for it, as “it is required to keep a stable background connection”.

What goes online

When you install it yourself, every Google service in it starts off: device registration, push messaging, device attestation and the Play Store services. A ROM that ships microG can set different defaults; reading them from the system partition is new in this version. Once you turn services on, microG’s wiki lists the Google servers each one uses, and adds: “For all of them, we strip device identifier (MAC addresses, IMEI, etc) from requests where they normally would be (and if required use random but valid identifiers instead).”

  • Device attestation, when turned on, downloads and runs Google’s own proprietary DroidGuard code, which Google’s servers require for SafetyNet answers.
  • Location: Mozilla’s location service, which microG used to rely on, closed to outside apps in 2024. Since version 0.3.3, “no service selected by default”: no online lookup happens until you choose one. This build offers Positon (marked Suggested), BeaconDB, or your own server. Contributing your Wi-Fi and mobile-network data to BeaconDB is off by default.
  • Maps in apps load map tiles from Mapbox, going by the code.
  • No update check. microG doesn’t contact its own servers; updates come from its F-Droid repository or a new download. Its F-Droid repository marks every release as connecting to non-free network services, Google’s.

Why our scan lists trackers

Our check reports Google Analytics, Google Firebase Analytics and Google AdMob. microG reimplements Google’s interfaces under Google’s own class names, including empty stand-ins for analytics and ads, and those names match the tracker signatures. microG’s implementation status lists analytics and mobile ads as “Not intended”. We take the match as a consequence of what microG is, not as tracking, though we haven’t traced every one of those classes.

About this file

  • This is microG’s own build of version 0.3.17.252432, released on 29 September 2026, from its GitHub release (com.google.android.gms-252432034.apk). It is byte for byte the file in microG’s F-Droid repository, signed with the certificate whose fingerprint microG publishes for that repository (O=NOGAPPS Project).
  • 0.3.17 fixes 13 security vulnerabilities, three of them rated high, among them a push-messaging connection that didn’t verify the server’s name. microG says it wasn’t aware of them being exploited.
  • A known issue in this version: signing in to Aurora Store for the first time can get stuck because the permission dialog never appears (#3853); a fix is under review.
  • The 108.1 MB file runs on Android 4.4 and later and declares 65 permissions, for location, accounts, push messaging, security keys, SMS code reading and the camera for barcode scanning. Some privileged ones only take effect when a ROM grants them; microG says it also works without them, “with only minor downsides”.
  • microG is licensed under the Apache-2.0. The source of this version is at https://github.com/microg/GmsCore/tree/v0.3.17.252432.

What’s inside the APK

Trackers

Google Analytics, Google Firebase Analytics, Google AdMob

Code from these SDKs is in the package. That shows it is bundled, not how it is used.

Native code

4 CPU types

Runs on 64-bit and older 32-bit ARM phones.

Android versions

Android 4.4 and up

Built for Android 10 (target API 29).

Permissions

65

15 of them need your approval first.

CPU types in this build: arm64-v8a (64-bit ARM, almost every phone since 2017); armeabi-v7a (32-bit ARM, older and budget phones); x86 (32-bit Intel, emulators); x86_64 (64-bit Intel, emulators and Chromebooks).

Asks you first (15)

Android shows a prompt before the app can use these.

  • Location while running in the background · ACCESS_BACKGROUND_LOCATION
  • Approximate location · ACCESS_COARSE_LOCATION
  • Precise location · ACCESS_FINE_LOCATION
  • Advertise to nearby Bluetooth devices · BLUETOOTH_ADVERTISE
  • Connect to paired Bluetooth devices · BLUETOOTH_CONNECT
  • Scan for Bluetooth devices · BLUETOOTH_SCAN
  • Body sensors such as heart rate · BODY_SENSORS
  • Use the camera · CAMERA
  • See the accounts on the device · GET_ACCOUNTS
  • Show notifications (Android 13+) · POST_NOTIFICATIONS
  • Read your contacts · READ_CONTACTS
  • Read shared storage (Android 12 and older) · READ_EXTERNAL_STORAGE
  • Read phone status and identity · READ_PHONE_STATE
  • Receive text messages · RECEIVE_SMS
  • Write shared storage (Android 10 and older) · WRITE_EXTERNAL_STORAGE

You switch these on in Settings (1)

Special app access. Nothing is granted until you turn it on yourself.

  • Display over other apps · SYSTEM_ALERT_WINDOW
System-level (3)

Reserved for system apps. A normal install does not get these; they only take effect through root, ADB or Shizuku, if at all.

  • DUMP
  • INTERACT_ACROSS_USERS
  • MODIFY_PHONE_STATE
Granted at install (36)

Low-risk permissions Android grants automatically, plus any we have not classified.

  • ACCESS_ADSERVICES_AD_ID
  • ACCESS_ADSERVICES_ATTRIBUTION
  • ACCESS_ADSERVICES_TOPICS
  • ACCESS_NETWORK_STATE
  • ACCESS_WIFI_STATE
  • AUTHENTICATE_ACCOUNTS
  • BLUETOOTH
  • BLUETOOTH_ADMIN
  • CHANGE_DEVICE_IDLE_TEMP_WHITELIST
  • CHANGE_WIFI_STATE
  • FAKE_PACKAGE_SIGNATURE
  • FOREGROUND_SERVICE
  • INSTALL_LOCATION_PROVIDER
  • INTERACT_ACROSS_PROFILES
  • INTERNET
  • LOCATION_HARDWARE
  • MANAGE_ACCOUNTS
  • MANAGE_USB
  • MODIFY_AUDIO_SETTINGS
  • NETWORK_SCAN
  • NFC
  • PROVIDE_DEFAULT_ENABLED_CREDENTIAL_SERVICE
  • PROVIDE_REMOTE_CREDENTIALS
  • READ_SYNC_SETTINGS
  • READ_SYNC_STATS
  • RECEIVE_BOOT_COMPLETED
  • REQUEST_IGNORE_BATTERY_OPTIMIZATIONS
  • START_ACTIVITIES_FROM_BACKGROUND
  • UPDATE_APP_OPS_STATS
  • UPDATE_DEVICE_STATS
  • USE_BIOMETRIC
  • USE_CREDENTIALS
  • USE_FINGERPRINT
  • WAKE_LOCK
  • WATCH_APPOPS
  • WRITE_SYNC_SETTINGS
Defined by other apps (10)

Permissions that belong to another app or to this app itself.

  • com.google.android.c2dm.permission.RECEIVE
  • com.google.android.c2dm.permission.SEND
  • com.google.android.gms.DYNAMIC_RECEIVER_NOT_EXPORTED_PERMISSION
  • com.google.android.gms.auth.api.phone.permission.SEND
  • com.google.android.gms.auth.permission.GOOGLE_ACCOUNT_CHANGE
  • com.google.android.gms.locationsharingreporter.periodic.STATUS_UPDATE
  • com.google.android.gms.nearby.exposurenotification.EXPOSURE_CALLBACK
  • com.google.android.gms.permission.AD_ID
  • com.google.android.gtalkservice.permission.GTALK_SERVICE
  • org.microg.gms.STATUS_BROADCAST

More Information

Package name
com.google.android.gms
Version
0.3.17.252432 (build 252432034)
File size
108.1 MB (108,113,833 bytes)
Requires
Android 4.4 or later
Category
System Tools
License
Apache-2.0
Developer
microg
Released
Sep 29, 2026
Signer SHA-256
9bd06727e62796c0130eb6dab39b73157451582cbd138e86c468acc395d14165
File SHA-256
e5e6cba078bdec812b5450599350e5c1a12c8b7438da5bf77123af170f8c1a35
Checked
, against the v0.3.17.252432 release on GitHub · how we check · verify it yourself

Common questions

Is this APK the official microG Services release?

Yes. It is the file from the project’s v0.3.17.252432 release on GitHub, byte for byte, and it matches the SHA-256 checksum GitHub publishes for it. It is signed with the certificate we recorded when we first checked microG Services (SHA-256 9bd06727e62796c0130eb6dab39b73157451582cbd138e86c468acc395d14165); a release signed with a different key would not be published here.

What Android version does microG Services need?

Android 4.4 or later (API level 19). Version 0.3.17.252432 is built for Android 10 (target API 29). Runs on 64-bit and older 32-bit ARM phones.

Can microG Services access the internet?

Yes. The APK requests Android’s internet permission. In total it declares 65 permissions, and 15 of them need your approval first.

Does microG Services contain trackers?

Yes. Version 0.3.17.252432 contains code from Google Analytics, Google Firebase Analytics and Google AdMob, which match Exodus Privacy tracker signatures. That shows the code is bundled, not how the app uses it.

Is microG Services open source?

Yes. microG Services is released under the Apache-2.0 licence, and its source code is published at https://github.com/microg/GmsCore.

Can I install microG on a phone that has Google Play services?

No. microG’s wiki says its app “cannot be installed on devices that already have Google Play Services installed”, and its setup steps begin with removing Google’s. This file uses Google’s package name but is signed by microG, so Android refuses to install it over Google’s app. microG also publishes a “Limited Services” build under another name, which it calls “a development preview for special situations”.

Do I also need the microG Companion?

For a complete setup, yes, unless the real Play Store is installed. microG’s installation guide: “Install the apk of microG Companion. If you have the official Play Store installed, skip this step.” The companion provides the Play Store services that apps call, such as licence checks and in-app purchases. It isn’t hosted here; it’s on microG’s GitHub release and in microG’s F-Droid repository.

Do I need a Google account, and what does it send to Google?

No account is needed, even for push notifications. Installed by you, it starts with device registration, push messaging and device attestation all switched off. When you turn them on, it contacts Google’s servers for those services; microG’s wiki says it strips device identifiers such as MAC addresses and IMEI from those requests, using random ones where needed.

Will banking apps and Play Integrity checks work?

Not reliably. microG’s wiki rates its Play Integrity support as “Mostly”, and an issue about Play Integrity failing with the companion is still open. A maintainer fixed basic integrity in July 2026, but users still report failures, and stronger checks generally don’t pass. Apps that require them may refuse to run.

Recent releases

Version Released Size
v0.3.17.252432 · this download Sep 29, 2026 108.1 MB
v0.3.16.1.252432 Sep 29, 2026 108.0 MB
v0.3.16.252432 Jul 14, 2026 108.1 MB
v0.3.15.250932 Apr 24, 2026 105.9 MB
v0.3.13.250932 Feb 9, 2026 105.6 MB

Recent releases on the project’s GitHub. We host and check only the newest one. Full changelog.

Alternatives and related apps

  • Aurora Store System Tools·9.4 MB·v4.8.4 A Google Play client that works without Google Play services, which microG setups often use to install apps.
    Download