Skip to content

Releases: microg/GmsCore

v0.2.23.214816

25 Jan 22:49
af28974
Compare
Choose a tag to compare

Changelog

  • Exposure Notifications:
    • Add support for validating signatures on key files (only for DE and CH for now). Thanks @cgrigis
    • Add support for more detailed API and use Advertisement version 1.1. Thanks @Elsensee
    • Improve permission checks, especially for Android 12. Thanks @Bubu, @fynngodau
  • Cloud Messaging:
    • Improve reconnecting logic. Thanks @grote
  • SafetyNet / DroidGuard:
    • Implement DroidGuard without additional helper.
    • Allow using external DroidGuard via network
    • Easy check for SafetyNet functionality in settings
  • Device profiles:
    • Allow to spoof device identity
    • Import device details from profile file
  • Location:
    • Update UnifiedNlp to v2.0-alpha7
    • Improved reliability of service
  • Improvements and bug fixes (as always)

New features

SafetyNet / DroidGuard

The updated SafetyNet implementation runs proprietary DroidGuard code privileged in the com.google.android.gms package name. This is required on at least some devices to pass SafetyNet. However this features is disabled by default. If you don't want to run proprietary code by Google on your device do not enabled SafetyNet.

As of now, microG SafetyNet implementation, once enabled, should work on all devices and ROMs that would pass SafetyNet attestation with original Google Play Services. This means that ROMs that are rooted (= come with a su binary that allow privilege escalation), with unlocked bootloader, or for some other reason do not pass the CTS or trigger the SafetyNet system will fail SafetyNet attestation. Hiding or spoofing such details from DroidGuard/SafetyNet is out of scope for this project, but techniques to allow passing SafetyNet on custom ROMs should equally work with microG.

Device profiles

This features is mostly useful for Huawei devices or other devices that are banned from accessing Google services. Choosing a profile of a non-banned device should allow using the device with Google services.

For now, two device profiles are included with microG (Nexus 5X with Android 8.1.0 and Moto G with LineageOS 14.1).

If you are a developer, you can easily create a device profiles based on data gathered from a device. See this file for a sample device profile. Once created, you can import device profiles in microG settings (under "Device registration") to test the profile.

If you are a custom ROM developer, you can add a custom device profile for your ROM by placing an appropriate device profile in /system/etc/microg_device_profile.xml. This can be useful to spoof the details of the original vendor ROM.

v0.2.22.212658

23 Aug 21:28
96cfe2b
Compare
Choose a tag to compare

Maintenance release with a few bug fixes.

See: commits since v0.2.21.212158

v0.2.21.212158

01 Jul 20:16
db6fd73
Compare
Choose a tag to compare

This release fixes two major bugs introduced with v0.2.20.212158.

Notice regarding updates from v0.2.20.212158

If you already updated to v0.2.20.212158 and you can't install the update to v0.2.21.212158 the usual way, you may need to connect your device to a compute with adb installed and invoke the following commands in a shell:

adb push path/to/play-services-core-212158042.apk /data/local/tmp/play-services-core-212158042.apk
adb shell pm install-create -r --staged # This returns a session id in brackets
adb shell pm install-write *session-id* base /data/local/tmp/play-services-core-212158042.apk
adb shell pm install-commit *session-id*
adb shell rm /data/local/tmp/play-services-core-212158042.apk
adb reboot

If this doesn't work, you might need to directly update the .apk on your /system-partition or wait for the ROM developer to update to v0.2.21.212158.

v0.2.20.212158

30 Jun 19:56
2d9419a
Compare
Choose a tag to compare

Important Notice: Some users reported issues with this release when using a system that has #microG installed on /system partition (including problems up- or downgrading after installing v0.2.20) or when using apps that make use of a Google account.

v0.2.19.211515

10 May 21:01
ab36b32
Compare
Choose a tag to compare

This release includes several bug fixes and improvements for Exposure Notification API integration with CCTG.

v0.2.18.204714

04 Mar 22:30
Compare
Choose a tag to compare

v0.2.17.204714

12 Jan 21:12
baf890c
Compare
Choose a tag to compare
  • Bug fixes for Exposure Notifications API
  • Improve translations. Thanks @heyarne (de), @Vavun (be, ru), @oscfdezdz (es)

v0.2.16.204713

22 Dec 00:01
45d4dff
Compare
Choose a tag to compare

Exposure Notification API

  • Work-around mixed use of v1 and ExposureWindow mode in Corona-Warn-App 1.9.1 (#1325)
  • Fix crashes with Android 8.0.0 (#1312)
  • Improve stability/compatibility when used as a library

Others;

  • Mapbox: Fix crashes when native library is not correctly updated (#1321)
  • Improve notification when using foreground service (#1324)
  • Allow full backups of GmsCore using adb backup/restore or seedvault

v0.2.15.204713

16 Dec 23:32
b21b523
Compare
Choose a tag to compare

Vision Barcode API:

  • Support for Vision Barcode API in GmsCore (#395, #670, #1211, #1297, thanks @lfxgroove)
  • Implementation of Vision Barcode API as client library

Exposure Notification API:

  • Allow exporting collected IDs for analysis with third party apps (like Warn-App-Companion, thanks @tlambertz)
  • Correctly support uploading of intra-day TEK
  • Update device calibration data and adjust announced transmission power
  • Display notification when user turns off bluetooth or location, ask to enable bluetooth and location before enabling EN (#1306)
  • Various bug fixes and improvements (#1290, #1300, and more)

Other:

  • Fix crash in cross-architecture apps using GMS Conscrypt (#1285)
  • Fix crash in apps using legacy versions of Firebase Auth client library (#1254, #1276)
  • Fix crash in Google Mail app (#1052)
  • Work-around for bug in Android 8.0.0 that can cause system crashes (#1312)
  • Translation update for Russian, Belarusian (thanks @Vavun), Italian (thanks @Pdevo, @Fs00), Japanese (thanks @yuk7)

v0.2.14.204215

25 Nov 11:23
a43273b
Compare
Choose a tag to compare
  • Exposure Notifications
    • Support for ExposureWindow mode
      • Allows using SwissCovid 1.2.0 and future releases of EN apps
    • Support for correctly reading the new (specification not yet published) bluetooth AEM format
    • Initial support for using microG EN as a library
      • Required artifacts published to maven central.
      • This feature hasn't been tested intensively yet, so if you want to use it please report and check back in #1166
      • Big thanks to @cgrigis for pushing this.
  • Security provider installer
    • Updated Conscrypt to 2.5.1
    • Using custom build of Conscrypt for better compatibility, see microg/conscrypt-gmscore
      • This fixes some apps that previously had timeouts or waited indefinitely when requesting data from servers
  • Wallet API: Stub isReadyToPay()
    • This fixes some apps that waited indefinitely during payment process and/or when displaying payment options
  • Bump version to 20.24.15
  • Use UnifiedNlp 2.0 alpha 5
    • Fixes upgrades from older versions of UnifiedNlp