Files
oxmc b328dbea85 SetupWizard: link okhttp3 + okio directly to fix R8 missing classes
coil-network-okhttp / coil-core declare okhttp3 and okio as static_libs,
but that transitive link (java_import jars through the Coil AAR imports)
does not reach this app's R8 program, so R8 reported okhttp3.*/okio.* as
missing and Coil's OkHttp fetcher would NoClassDefFoundError when loading
network images (device render from deviceInfo[4]). List okhttp3 and okio
directly in static_libs so their classes are in the dex.
2026-07-18 01:10:44 -07:00

81 lines
2.4 KiB
Plaintext

// SPDX-FileCopyrightText: The PawletOS Project
// SPDX-License-Identifier: Apache-2.0
android_app {
name: "PawletSetupWizard",
srcs: [
"app/src/main/java/**/*.kt",
// Soong-only BuildConfig stand-in (Gradle generates its own).
"soong-stubs/**/*.kt",
],
resource_dirs: ["app/src/main/res"],
manifest: "AndroidManifest.xml",
kotlincflags: ["-Xjvm-default=all"],
certificate: "platform",
privileged: true,
privapp_allowlist: "me.pawlet.setupwizard.xml",
system_ext_specific: true,
platform_apis: true,
overrides: ["Provision"],
optimize: {
proguard_flags_files: ["proguard.flags"],
},
static_libs: [
// AndroidX core
"androidx.core_core-ktx",
"androidx.appcompat_appcompat",
"androidx.activity_activity",
"androidx.activity_activity-compose",
"androidx.lifecycle_lifecycle-runtime-ktx",
"androidx.core_core-splashscreen",
// Compose runtime + UI
"androidx.compose.runtime_runtime",
"androidx.compose.ui_ui",
"androidx.compose.ui_ui-graphics",
"androidx.compose.foundation_foundation",
// Material3 + icons
"androidx.compose.material3_material3",
"androidx.compose.material_material-icons-extended",
// Compose animation
"androidx.compose.animation_animation",
// JSON
"gson",
// PawletOS platform APIs
"pawlet-system",
// Telephony helpers
"telephony-common",
// Device info library — source android_library from
// external/application_libs/AndroidDeviceInfo (the app/libs/ AAR is
// Gradle-only; defining an import here would collide with that module)
"android-device-info",
// Images — Coil 3 from prebuilts/application_libs/coil. The network
// module is mandatory for http(s) image URLs (Coil 3 core ships no
// fetcher; the okhttp one self-registers via ServiceLoader).
"coil-compose",
"coil-network-okhttp",
// okhttp3/okio are static_libs of coil-network-okhttp/coil-core, but
// that transitive link (java_import jars through AAR imports) does not
// reach this app's R8 program, leaving okhttp3.*/okio.* as "Missing
// class" and breaking network image loading at runtime. List them
// directly so they're in the dex.
"okhttp3",
"okio",
],
}