soul-browser/app/smali_classes3/com/google/android/material/R$layout.smali
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

151 lines
4.5 KiB
Smali

.class public final Lcom/google/android/material/R$layout;
.super Ljava/lang/Object;
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lcom/google/android/material/R;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x19
name = "layout"
.end annotation
# static fields
.field public static design_bottom_navigation_item:I = 0x7f0c0028
.field public static design_bottom_sheet_dialog:I = 0x7f0c0029
.field public static design_layout_snackbar:I = 0x7f0c002a
.field public static design_layout_snackbar_include:I = 0x7f0c002b
.field public static design_layout_tab_icon:I = 0x7f0c002c
.field public static design_layout_tab_text:I = 0x7f0c002d
.field public static design_menu_item_action_area:I = 0x7f0c002e
.field public static design_navigation_item:I = 0x7f0c002f
.field public static design_navigation_item_header:I = 0x7f0c0030
.field public static design_navigation_item_separator:I = 0x7f0c0031
.field public static design_navigation_item_subheader:I = 0x7f0c0032
.field public static design_navigation_menu:I = 0x7f0c0033
.field public static design_navigation_menu_item:I = 0x7f0c0034
.field public static design_text_input_end_icon:I = 0x7f0c0035
.field public static design_text_input_start_icon:I = 0x7f0c0036
.field public static m3_alert_dialog:I = 0x7f0c003a
.field public static m3_alert_dialog_actions:I = 0x7f0c003b
.field public static m3_alert_dialog_title:I = 0x7f0c003c
.field public static m3_auto_complete_simple_item:I = 0x7f0c003d
.field public static m3_navigation_menu_divider:I = 0x7f0c003e
.field public static m3_navigation_menu_subheader:I = 0x7f0c003f
.field public static m3_side_sheet_dialog:I = 0x7f0c0040
.field public static material_chip_input_combo:I = 0x7f0c0041
.field public static material_clock_display:I = 0x7f0c0042
.field public static material_clock_display_divider:I = 0x7f0c0043
.field public static material_clock_period_toggle:I = 0x7f0c0044
.field public static material_clock_period_toggle_land:I = 0x7f0c0045
.field public static material_clockface_textview:I = 0x7f0c0046
.field public static material_clockface_view:I = 0x7f0c0047
.field public static material_radial_view_group:I = 0x7f0c0048
.field public static material_textinput_timepicker:I = 0x7f0c0049
.field public static material_time_chip:I = 0x7f0c004a
.field public static material_time_input:I = 0x7f0c004b
.field public static material_timepicker:I = 0x7f0c004c
.field public static material_timepicker_dialog:I = 0x7f0c004d
.field public static material_timepicker_textinput_display:I = 0x7f0c004e
.field public static mtrl_alert_dialog:I = 0x7f0c005e
.field public static mtrl_alert_dialog_actions:I = 0x7f0c005f
.field public static mtrl_alert_dialog_title:I = 0x7f0c0060
.field public static mtrl_alert_select_dialog_item:I = 0x7f0c0061
.field public static mtrl_alert_select_dialog_multichoice:I = 0x7f0c0062
.field public static mtrl_alert_select_dialog_singlechoice:I = 0x7f0c0063
.field public static mtrl_auto_complete_simple_item:I = 0x7f0c0064
.field public static mtrl_calendar_day:I = 0x7f0c0065
.field public static mtrl_calendar_day_of_week:I = 0x7f0c0066
.field public static mtrl_calendar_days_of_week:I = 0x7f0c0067
.field public static mtrl_calendar_horizontal:I = 0x7f0c0068
.field public static mtrl_calendar_month:I = 0x7f0c0069
.field public static mtrl_calendar_month_labeled:I = 0x7f0c006a
.field public static mtrl_calendar_month_navigation:I = 0x7f0c006b
.field public static mtrl_calendar_months:I = 0x7f0c006c
.field public static mtrl_calendar_vertical:I = 0x7f0c006d
.field public static mtrl_calendar_year:I = 0x7f0c006e
.field public static mtrl_layout_snackbar:I = 0x7f0c006f
.field public static mtrl_layout_snackbar_include:I = 0x7f0c0070
.field public static mtrl_navigation_rail_item:I = 0x7f0c0071
.field public static mtrl_picker_actions:I = 0x7f0c0072
.field public static mtrl_picker_dialog:I = 0x7f0c0073
.field public static mtrl_picker_fullscreen:I = 0x7f0c0074
.field public static mtrl_picker_header_dialog:I = 0x7f0c0075
.field public static mtrl_picker_header_fullscreen:I = 0x7f0c0076
.field public static mtrl_picker_header_selection_text:I = 0x7f0c0077
.field public static mtrl_picker_header_title_text:I = 0x7f0c0078
.field public static mtrl_picker_header_toggle:I = 0x7f0c0079
.field public static mtrl_picker_text_input_date:I = 0x7f0c007a
.field public static mtrl_picker_text_input_date_range:I = 0x7f0c007b
.field public static mtrl_search_bar:I = 0x7f0c007c
.field public static mtrl_search_view:I = 0x7f0c007d