soul-browser/sources/java/com/google/android/gms/internal/drive/zzke.java
KaKi87 550ddb0413
Decompile and recreate Soul Browser v1.4.85 with APK CI builds (#1)
* Decompile and recreate Soul Browser v1.4.85 with APK CI builds

Co-authored-by: KaKi87 <KaKi87@pm.me>

* Fix CI build: include bundled google.jks and remove PR trigger

The apktool build failed in CI because app/unknown/.../google.jks was
excluded by the *.jks gitignore rule. Whitelist app-bundled JKS files
and commit the missing resource.

Also remove the redundant pull_request workflow trigger.

Co-authored-by: KaKi87 <KaKi87@pm.me>

* Change package ID to com.github.kaki87.soulbrowser

Rename the application ID so the rebuilt APK can be installed
alongside the original Soul Browser from Google Play.

- Update AndroidManifest package, permissions, providers, and actions
- Update R class references in smali (com/github/kaki87/soulbrowser/R)
- Update shortcuts.xml targetPackage
- Rename app label to "Soul Rebuild" for easy identification

Co-authored-by: KaKi87 <KaKi87@pm.me>

* Fix install compatibility: remove split APK metadata and bundle native libs

The rebuilt APK still declared requiredSplitTypes and Play Store split
metadata, causing Android to reject standalone installs as incompatible.

- Remove requiredSplitTypes and split-related manifest meta-data
- Merge native libs from all ABI splits with uncompressed storage
- Page-align before signing for extractNativeLibs=false
- Add .so to apktool doNotCompress list

Co-authored-by: KaKi87 <KaKi87@pm.me>

* Fix install failure: use apksigner v2/v3 and bundle arm64 native libs

Target SDK 36 requires APK Signature Scheme v2+, but jarsigner only
produces v1 signatures, causing Android to reject the install.

- Sign with apksigner (v1+v2+v3) instead of jarsigner
- Add arm64-v8a native libraries from universal Soul Browser 1.4.79
- Set extractNativeLibs=true for reliable sideload installs
- Commit stable debug keystore for consistent signatures across builds

Co-authored-by: KaKi87 <KaKi87@pm.me>

* Add committed debug keystore for consistent APK signatures

Co-authored-by: KaKi87 <KaKi87@pm.me>

* Fix startup crash: use original classes2.dex desugar libraries

Apktool recompiles smali_classes2 into a broken classes2.dex, causing
ClassNotFoundException for j$.com.android.tools.r8.a at ML Kit init.

Inject the original classes2.dex (Java 8+ desugar libs) after apktool
build instead of using the recompiled version.

Co-authored-by: KaKi87 <KaKi87@pm.me>

* Fix missing drawable resources from density split APKs

The base APK is an app bundle module; density-specific drawables like
seek_thumb_nor_b live in config.xhdpi.apk and were missing after rebuild,
causing Resources$NotFoundException at runtime.

- Merge non-9-patch resources from split APKs before apktool build
- Sync public.xml IDs from R smali only when backing files exist
- Add 713 density-specific resource IDs to public.xml

Co-authored-by: KaKi87 <KaKi87@pm.me>

---------

Co-authored-by: Cursor Agent <cursoragent@cursor.com>
2026-08-10 16:07:14 +02:00

120 lines
6.7 KiB
Java

package com.google.android.gms.internal.drive;
import java.lang.reflect.Type;
/* JADX WARN: Enum visitor error
jadx.core.utils.exceptions.JadxRuntimeException: Init of enum field 'EF0' uses external variables
at jadx.core.dex.visitors.EnumVisitor.createEnumFieldByConstructor(EnumVisitor.java:451)
at jadx.core.dex.visitors.EnumVisitor.processEnumFieldByRegister(EnumVisitor.java:395)
at jadx.core.dex.visitors.EnumVisitor.extractEnumFieldsFromFilledArray(EnumVisitor.java:324)
at jadx.core.dex.visitors.EnumVisitor.extractEnumFieldsFromInsn(EnumVisitor.java:262)
at jadx.core.dex.visitors.EnumVisitor.convertToEnum(EnumVisitor.java:151)
at jadx.core.dex.visitors.EnumVisitor.visit(EnumVisitor.java:100)
*/
/* JADX WARN: Failed to restore enum class, 'enum' modifier and super class removed */
/* loaded from: classes.dex */
public final class zzke {
public static final zzke f;
public static final zzke g;
public static final zzke[] h;
public static final Type[] i;
public static final /* synthetic */ zzke[] j;
/* renamed from: c, reason: collision with root package name */
public final int f10216c;
/* JADX INFO: Fake field, exist only in values array */
zzke EF0;
static {
zzks zzksVar = zzks.DOUBLE;
zzkg zzkgVar = zzkg.f10218c;
zzke zzkeVar = new zzke("DOUBLE", 0, 0, zzkgVar, zzksVar);
zzks zzksVar2 = zzks.FLOAT;
zzke zzkeVar2 = new zzke("FLOAT", 1, 1, zzkgVar, zzksVar2);
zzks zzksVar3 = zzks.LONG;
zzke zzkeVar3 = new zzke("INT64", 2, 2, zzkgVar, zzksVar3);
zzke zzkeVar4 = new zzke("UINT64", 3, 3, zzkgVar, zzksVar3);
zzks zzksVar4 = zzks.INT;
zzke zzkeVar5 = new zzke("INT32", 4, 4, zzkgVar, zzksVar4);
zzke zzkeVar6 = new zzke("FIXED64", 5, 5, zzkgVar, zzksVar3);
zzke zzkeVar7 = new zzke("FIXED32", 6, 6, zzkgVar, zzksVar4);
zzks zzksVar5 = zzks.BOOLEAN;
zzke zzkeVar8 = new zzke("BOOL", 7, 7, zzkgVar, zzksVar5);
zzks zzksVar6 = zzks.STRING;
zzke zzkeVar9 = new zzke("STRING", 8, 8, zzkgVar, zzksVar6);
zzks zzksVar7 = zzks.MESSAGE;
zzke zzkeVar10 = new zzke("MESSAGE", 9, 9, zzkgVar, zzksVar7);
zzks zzksVar8 = zzks.BYTE_STRING;
zzke zzkeVar11 = new zzke("BYTES", 10, 10, zzkgVar, zzksVar8);
zzke zzkeVar12 = new zzke("UINT32", 11, 11, zzkgVar, zzksVar4);
zzks zzksVar9 = zzks.ENUM;
zzke zzkeVar13 = new zzke("ENUM", 12, 12, zzkgVar, zzksVar9);
zzke zzkeVar14 = new zzke("SFIXED32", 13, 13, zzkgVar, zzksVar4);
zzke zzkeVar15 = new zzke("SFIXED64", 14, 14, zzkgVar, zzksVar3);
zzke zzkeVar16 = new zzke("SINT32", 15, 15, zzkgVar, zzksVar4);
zzke zzkeVar17 = new zzke("SINT64", 16, 16, zzkgVar, zzksVar3);
zzke zzkeVar18 = new zzke("GROUP", 17, 17, zzkgVar, zzksVar7);
zzkg zzkgVar2 = zzkg.f;
zzke zzkeVar19 = new zzke("DOUBLE_LIST", 18, 18, zzkgVar2, zzksVar);
zzke zzkeVar20 = new zzke("FLOAT_LIST", 19, 19, zzkgVar2, zzksVar2);
zzke zzkeVar21 = new zzke("INT64_LIST", 20, 20, zzkgVar2, zzksVar3);
zzke zzkeVar22 = new zzke("UINT64_LIST", 21, 21, zzkgVar2, zzksVar3);
zzke zzkeVar23 = new zzke("INT32_LIST", 22, 22, zzkgVar2, zzksVar4);
zzke zzkeVar24 = new zzke("FIXED64_LIST", 23, 23, zzkgVar2, zzksVar3);
zzke zzkeVar25 = new zzke("FIXED32_LIST", 24, 24, zzkgVar2, zzksVar4);
zzke zzkeVar26 = new zzke("BOOL_LIST", 25, 25, zzkgVar2, zzksVar5);
zzke zzkeVar27 = new zzke("STRING_LIST", 26, 26, zzkgVar2, zzksVar6);
zzke zzkeVar28 = new zzke("MESSAGE_LIST", 27, 27, zzkgVar2, zzksVar7);
zzke zzkeVar29 = new zzke("BYTES_LIST", 28, 28, zzkgVar2, zzksVar8);
zzke zzkeVar30 = new zzke("UINT32_LIST", 29, 29, zzkgVar2, zzksVar4);
zzke zzkeVar31 = new zzke("ENUM_LIST", 30, 30, zzkgVar2, zzksVar9);
zzke zzkeVar32 = new zzke("SFIXED32_LIST", 31, 31, zzkgVar2, zzksVar4);
zzke zzkeVar33 = new zzke("SFIXED64_LIST", 32, 32, zzkgVar2, zzksVar3);
zzke zzkeVar34 = new zzke("SINT32_LIST", 33, 33, zzkgVar2, zzksVar4);
zzke zzkeVar35 = new zzke("SINT64_LIST", 34, 34, zzkgVar2, zzksVar3);
zzkg zzkgVar3 = zzkg.g;
zzke zzkeVar36 = new zzke("DOUBLE_LIST_PACKED", 35, 35, zzkgVar3, zzksVar);
f = zzkeVar36;
zzke zzkeVar37 = new zzke("FLOAT_LIST_PACKED", 36, 36, zzkgVar3, zzksVar2);
zzke zzkeVar38 = new zzke("INT64_LIST_PACKED", 37, 37, zzkgVar3, zzksVar3);
zzke zzkeVar39 = new zzke("UINT64_LIST_PACKED", 38, 38, zzkgVar3, zzksVar3);
zzke zzkeVar40 = new zzke("INT32_LIST_PACKED", 39, 39, zzkgVar3, zzksVar4);
zzke zzkeVar41 = new zzke("FIXED64_LIST_PACKED", 40, 40, zzkgVar3, zzksVar3);
zzke zzkeVar42 = new zzke("FIXED32_LIST_PACKED", 41, 41, zzkgVar3, zzksVar4);
zzke zzkeVar43 = new zzke("BOOL_LIST_PACKED", 42, 42, zzkgVar3, zzksVar5);
zzke zzkeVar44 = new zzke("UINT32_LIST_PACKED", 43, 43, zzkgVar3, zzksVar4);
zzke zzkeVar45 = new zzke("ENUM_LIST_PACKED", 44, 44, zzkgVar3, zzksVar9);
zzke zzkeVar46 = new zzke("SFIXED32_LIST_PACKED", 45, 45, zzkgVar3, zzksVar4);
zzke zzkeVar47 = new zzke("SFIXED64_LIST_PACKED", 46, 46, zzkgVar3, zzksVar3);
zzke zzkeVar48 = new zzke("SINT32_LIST_PACKED", 47, 47, zzkgVar3, zzksVar4);
zzke zzkeVar49 = new zzke("SINT64_LIST_PACKED", 48, 48, zzkgVar3, zzksVar3);
g = zzkeVar49;
j = new zzke[]{zzkeVar, zzkeVar2, zzkeVar3, zzkeVar4, zzkeVar5, zzkeVar6, zzkeVar7, zzkeVar8, zzkeVar9, zzkeVar10, zzkeVar11, zzkeVar12, zzkeVar13, zzkeVar14, zzkeVar15, zzkeVar16, zzkeVar17, zzkeVar18, zzkeVar19, zzkeVar20, zzkeVar21, zzkeVar22, zzkeVar23, zzkeVar24, zzkeVar25, zzkeVar26, zzkeVar27, zzkeVar28, zzkeVar29, zzkeVar30, zzkeVar31, zzkeVar32, zzkeVar33, zzkeVar34, zzkeVar35, zzkeVar36, zzkeVar37, zzkeVar38, zzkeVar39, zzkeVar40, zzkeVar41, zzkeVar42, zzkeVar43, zzkeVar44, zzkeVar45, zzkeVar46, zzkeVar47, zzkeVar48, zzkeVar49, new zzke("GROUP_LIST", 49, 49, zzkgVar2, zzksVar7), new zzke("MAP", 50, 50, zzkg.h, zzks.VOID)};
i = new Type[0];
zzke[] values = values();
h = new zzke[values.length];
for (zzke zzkeVar50 : values) {
h[zzkeVar50.f10216c] = zzkeVar50;
}
}
public zzke(String str, int i2, int i3, zzkg zzkgVar, zzks zzksVar) {
this.f10216c = i3;
int i4 = zzkf.f10217a[zzkgVar.ordinal()];
if (i4 != 1) {
if (i4 == 2) {
zzksVar.getClass();
}
} else {
zzksVar.getClass();
}
if (zzkgVar == zzkg.f10218c) {
int i5 = zzkf.b[zzksVar.ordinal()];
}
}
public static zzke[] values() {
return (zzke[]) j.clone();
}
}