[Magisk] oF2pks:
( , with Treble nothing is impossible,) check my microG/gsi (requires:

fastboot

flash system ___.img ), I will release latest JanV109 in very next few days, with many microG improvements: https://xdaforums.com/project-trebl...ufofficial-t3878115/post78401533#post78401533

Also uploaded there, are multiple "switchable compatible" gmscore (non-debug release)

[MENTION=4187311]Setialpha[/MENTION] , I have added multiArch and geo.API_KEY to yours, and have everything working, including Satellite/GoogleMaps & location within any browsers (but GoogleMaps.apk still broken after 9.84.2 https://androidfilehost.com/?fid=11410963190603886579 ).

[SIZE="1"]diff --git a/extern/GmsApi b/extern/GmsApi
--- a/extern/GmsApi
+++ b/extern/GmsApi
@@ -1 +1 @@
-Subproject commit 59aab6138b1e7a4e1d94e4288ca5a4c864b1260d
+Subproject commit 59aab6138b1e7a4e1d94e4288ca5a4c864b1260d-dirty
diff --git a/play-services-core/build.gradle b/play-services-core/build.gradle
index 1b35eef..03c14f8 100644
--- a/play-services-core/build.gradle
+++ b/play-services-core/build.gradle
@@ -61,7 +61,7 @@ def execResult(...args) {
return stdout.toString().trim()
}

-def gmsVersion = "14.7.99"
+def gmsVersion = "15.9.99"
def gmsVersionCode = Integer.parseInt(gmsVersion.replaceAll('\\.', ''))
def gitVersionBase = execResult('git', 'describe', '--tags', '--abbrev=0').substring(1)
def gitCommitCount = Integer.parseInt(execResult('git', 'rev-list', '--count', "v$gitVersionBase..HEAD"))
@@ -69,8 +69,8 @@ def gitCommitId = execResult('git', 'show-ref', '--abbrev=7', '--head', 'HEAD').
def gitDirty = execResult('git', 'status', '--porcelain').size() > 0
def ourVersionBase = gitVersionBase.substring(0, gitVersionBase.lastIndexOf('.'))
def ourVersionMinor = Integer.parseInt(ourVersionBase.substring(ourVersionBase.lastIndexOf('.') + 1))
-def ourVersionCode = gmsVersionCode * 1000 + ourVersionMinor * 2 + (gitCommitCount > 0 || gitDirty ? gitCommitCount : 0)
-def ourVersionName = "$ourVersionBase.$gmsVersionCode" + (gitCommitCount > 0 && !gitDirty ? "-$gitCommitCount" : "") + (gitDirty ? "-dirty" : "") + (gitCommitCount > 0 && !gitDirty ? " ($gitCommitId)" : "-$gitCommitCount")
+def ourVersionCode = gmsVersionCode * 1000 + ourVersionMinor * 2 + (gitCommitCount > 0 || gitDirty ? 1 : 0)
+def ourVersionName = "$ourVersionBase.$gmsVersionCode" + (gitCommitCount > 0 && !gitDirty ? "-$gitCommitCount" : "") + (gitDirty ? "-dirty" : "") + (gitCommitCount > 0 && !gitDirty ? " ($gitCommitId)" : "")
logger.lifecycle('Starting build for version {} ({})...', ourVersionName, ourVersionCode)

android {
diff --git a/play-services-core/src/main/AndroidManifest.xml b/play-services-core/src/main/AndroidManifest.xml
index 0a9e419..bb1290a 100644
--- a/play-services-core/src/main/AndroidManifest.xml
+++ b/play-services-core/src/main/AndroidManifest.xml
@@ -109,7 +109,7 @@

<application
android:allowBackup="false"
- android:extractNativeLibs="false"
+ android:multiArch="true"
android:icon="@mipmap/ic_core_service_app"
android:label="@string/gms_app_name">
<meta-data
@@ -117,6 +117,7 @@
android:value="@string/fake_signature"/>

<!-- Location -->
+ <meta-data android:name="com.google.android.geo.API_KEY" android:value="AIzaSyAP-gfH3qvi6vgHZbSYwQ_XHqV_mXHhzIk"/>

<service android:name="org.microg.gms.location.GoogleLocationManagerService">
<intent-filter>
diff --git a/play-services-core/src/main/java/org/microg/gms/ui/SettingsActivity.java b/play-services-core/src/main/java/org/microg/gms/ui/SettingsActivity.java
index 0ff6673..26ec127 100644
--- a/play-services-core/src/main/java/org/microg/gms/ui/SettingsActivity.java
+++ b/play-services-core/src/main/java/org/microg/gms/ui/SettingsActivity.java
@@ -71,7 +71,7 @@ public class SettingsActivity extends AbstractDashboardActivity {
}

private void updateDetails() {
- findPreference(PREF_ABOUT).setSummary(getString(R.string.about_version_str, AboutFragment.getSelfVersion(getContext())));
+ findPreference(PREF_ABOUT).setSummary("(Nanolx)"+getString(R.string.about_version_str, AboutFragment.getSelfVersion(getContext())));
if (GcmPrefs.get(getContext()).isEnabled()) {
GcmDatabase database = new GcmDatabase(getContext());
int regCount = database.getRegistrationList().size();[/SIZE]

btw, is your libconscrypt_jni.so needed in system/priv-app/GmsCore/lib ?

( [MENTION=5627087]ale5000[/MENTION] latest Playstore 13.1.32 release adds READ_RUNTIME_PROFILES & SUBSTITUTE_NOTIFICATION_APP_NAME in privapp-permissions/package)