fixed microg pushes

This commit is contained in:
gdlbo
2023-04-20 18:24:29 +03:00
parent a5d0f1b730
commit 6cac613f70
10 changed files with 35 additions and 25 deletions
@@ -15,7 +15,7 @@ public class GmsUtils {
public static boolean isGmsInstalled() {
try {
AndroidUtils.getGlobalContext().getPackageManager().getPackageInfo("com.google.android.gms", 0);
return !Preferences.getBoolValue("forceMicrogUsage", false);
return true;
} catch (Exception unused) {
return false;
}
@@ -44,33 +44,21 @@ public class GmsUtils {
}
} // Music channels fix
public static void applyGMSReceiver() {
int flagSpoofed = needToSpoof ? PackageManager.COMPONENT_ENABLED_STATE_ENABLED : PackageManager.COMPONENT_ENABLED_STATE_DISABLED;
int flagOrig = !needToSpoof ? PackageManager.COMPONENT_ENABLED_STATE_ENABLED : PackageManager.COMPONENT_ENABLED_STATE_DISABLED;
ComponentName spoofed = new ComponentName(AndroidUtils.getGlobalContext(), FirebaseInstanceIdReceiver2.class);
ComponentName orig = new ComponentName(AndroidUtils.getGlobalContext(), FirebaseInstanceIdReceiver.class);
if (isComponentEnabled(orig) && needToSpoof || isComponentEnabled(spoofed) && !needToSpoof) {
setComponentEnabled(spoofed, flagSpoofed);
setComponentEnabled(orig, flagOrig);
}
}
private static boolean isComponentEnabled(ComponentName componentName) {
return AndroidUtils.getGlobalContext().getPackageManager().getComponentEnabledSetting(componentName) == PackageManager.COMPONENT_ENABLED_STATE_ENABLED;
return AndroidUtils.getGlobalContext().getPackageManager().getComponentEnabledSetting(componentName) == PackageManager.COMPONENT_ENABLED_STATE_ENABLED || AndroidUtils.getGlobalContext().getPackageManager().getComponentEnabledSetting(componentName) == PackageManager.COMPONENT_ENABLED_STATE_DEFAULT;
}
private static void setComponentEnabled(ComponentName componentName, int newState) {
AndroidUtils.getGlobalContext().getPackageManager().setComponentEnabledSetting(componentName, newState, PackageManager.DONT_KILL_APP);
AndroidUtils.getGlobalContext().getPackageManager().setComponentEnabledSetting(componentName, newState, PackageManager.DONT_KILL_APP);
}
public static String replaceGMSPackage(String str) {
return needToSpoof ? str.replace("com.google", "com.mgoogle") : str;
return needToSpoof ? str.replaceAll("com.google", "com.mgoogle") : str;
}
public static String getFirebaseInstanceIdReceiver() {
return "com.google.firebase.iid.FirebaseInstanceIdReceiver" + (needToSpoof ? "2" : "");
return getFirebaseInstanceIdReceiverClass().getName();
}
public static Class getFirebaseInstanceIdReceiverClass() {
@@ -29,7 +29,6 @@ public class Preferences {
StrictMode.setThreadPolicy(policy);
GmsUtils.fixGapps();
GmsUtils.applyGMSReceiver();
setProxy();
setupFilters();
VTVerifications.load(application);
-1
View File
@@ -2310,7 +2310,6 @@
<receiver
android:name="com.google.firebase.iid.FirebaseInstanceIdReceiver2"
android:exported="true"
android:enabled="false"
android:permission="com.mgoogle.android.c2dm.permission.SEND">
<intent-filter>
<action android:name="com.mgoogle.android.c2dm.intent.RECEIVE" />
-4
View File
@@ -17,10 +17,6 @@
android:entryValues="@array/animations_values"
android:key="anim_rtrn_type"
android:title="@string/franimation"/>
<com.vtosters.lite.ui.MaterialSwitchPreference
android:defaultValue="false"
android:key="forceMicrogUsage"
android:title="Использовать MicroG"/>
<com.vtosters.lite.ui.MaterialSwitchPreference
android:defaultValue="false"
android:key="useGenius"
@@ -21,9 +21,9 @@
const-string v2, "com.google.android.gms.common.stats.GmsCoreStatsService"
invoke-static {v1}, Lru/vtosters/lite/utils/GmsUtils;->replaceGMSPackage(Ljava/lang/String;)Ljava/lang/String;
invoke-static {v2}, Lru/vtosters/lite/utils/GmsUtils;->replaceGMSPackage(Ljava/lang/String;)Ljava/lang/String;
move-result-object v1
move-result-object v2
invoke-direct {v0, v1, v2}, Landroid/content/ComponentName;-><init>(Ljava/lang/String;Ljava/lang/String;)V
@@ -1975,6 +1975,10 @@
const-string p2, "content://com.google.android.gms.chimera/"
invoke-static {p2}, Lru/vtosters/lite/utils/GmsUtils;->replaceGMSPackage(Ljava/lang/String;)Ljava/lang/String;
move-result-object p2
invoke-virtual {v2, p2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v2, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
@@ -81,6 +81,10 @@
const-string v0, "content://com.google.android.gsf.gservices"
invoke-static {v0}, Lru/vtosters/lite/utils/GmsUtils;->replaceGMSPackage(Ljava/lang/String;)Ljava/lang/String;
move-result-object v0
invoke-static {v0}, Landroid/net/Uri;->parse(Ljava/lang/String;)Landroid/net/Uri;
move-result-object v0
@@ -89,6 +93,10 @@
const-string v0, "content://com.google.android.gsf.gservices/prefix"
invoke-static {v0}, Lru/vtosters/lite/utils/GmsUtils;->replaceGMSPackage(Ljava/lang/String;)Ljava/lang/String;
move-result-object v0
invoke-static {v0}, Landroid/net/Uri;->parse(Ljava/lang/String;)Landroid/net/Uri;
move-result-object v0
@@ -81,6 +81,10 @@
const-string v0, "content://com.google.android.gsf.gservices"
invoke-static {v0}, Lru/vtosters/lite/utils/GmsUtils;->replaceGMSPackage(Ljava/lang/String;)Ljava/lang/String;
move-result-object v0
invoke-static {v0}, Landroid/net/Uri;->parse(Ljava/lang/String;)Landroid/net/Uri;
move-result-object v0
@@ -89,6 +93,10 @@
const-string v0, "content://com.google.android.gsf.gservices/prefix"
invoke-static {v0}, Lru/vtosters/lite/utils/GmsUtils;->replaceGMSPackage(Ljava/lang/String;)Ljava/lang/String;
move-result-object v0
invoke-static {v0}, Landroid/net/Uri;->parse(Ljava/lang/String;)Landroid/net/Uri;
move-result-object v0
@@ -75,6 +75,10 @@
const-string v1, "content://com.google.android.gms.phenotype/"
invoke-static {v1}, Lru/vtosters/lite/utils/GmsUtils;->replaceGMSPackage(Ljava/lang/String;)Ljava/lang/String;
move-result-object v1
if-eqz v0, :cond_0
invoke-virtual {v1, p0}, Ljava/lang/String;->concat(Ljava/lang/String;)Ljava/lang/String;
@@ -234,6 +234,10 @@
const-string v1, "com.google.android.c2dm.intent.REGISTRATION"
invoke-static {v1}, Lru/vtosters/lite/utils/GmsUtils;->replaceGMSPackage(Ljava/lang/String;)Ljava/lang/String;
move-result-object v1
.line 12
invoke-virtual {v1, v0}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z