diff --git a/app/build.gradle.kts b/app/build.gradle.kts
index 31967b4..901f58f 100644
--- a/app/build.gradle.kts
+++ b/app/build.gradle.kts
@@ -2,6 +2,7 @@ plugins {
id("com.android.application")
id("org.jetbrains.kotlin.android")
id("org.jetbrains.kotlin.plugin.compose")
+ id("com.qhy04.gradle.android.res_opt")
}
android {
@@ -14,10 +15,16 @@ android {
targetSdk = 35
versionCode = 10
versionName = "1.4.0"
+
+ resourceConfigurations.addAll(
+ setOf(
+ "en",
+ "zh-rCN"
+ )
+ )
}
buildFeatures {
- buildConfig = true
compose = true
}
@@ -30,9 +37,11 @@ android {
getDefaultProguardFile("proguard-android-optimize.txt"),
"proguard-rules.pro"
)
+ ndk.abiFilters.add("")
packagingOptions.resources.excludes += setOf(
"DebugProbesKt.bin",
- "META-INF/*.version"
+ "META-INF/*.version",
+ "**LICENSE**"
)
dependenciesInfo.includeInApk = false
}
diff --git a/app/proguard-rules.pro b/app/proguard-rules.pro
index 438f4b3..33ac4e1 100644
--- a/app/proguard-rules.pro
+++ b/app/proguard-rules.pro
@@ -104,12 +104,6 @@
-dontwarn java.lang.ClassValue
-# ViewBinding
--keep public class * extends androidx.viewbinding.ViewBinding {*;}
--keep,allowoptimization public class * extends androidx.viewbinding.ViewBinding {
- public static * inflate(android.view.LayoutInflater);
-}
-
# Custom
--keep public class com.qhy040404.fxxkmiuiad.base.**{*;}
--keep public class com.qhy040404.fxxkmiuiad.utils.**{*;}
+#-keep public class com.qhy040404.fxxkmiuiad.utils.OsUtils{*;}
+-keep public class com.qhy040404.fxxkmiuiad.utils.PackageUtils{*;}
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index d4ad9a4..2e5d2b7 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -5,16 +5,11 @@
+ tools:targetApi="35">
diff --git a/app/src/main/java/com/qhy040404/fxxkmiuiad/Constants.kt b/app/src/main/java/com/qhy040404/fxxkmiuiad/Constants.kt
index 89f6e73..e623476 100644
--- a/app/src/main/java/com/qhy040404/fxxkmiuiad/Constants.kt
+++ b/app/src/main/java/com/qhy040404/fxxkmiuiad/Constants.kt
@@ -1,16 +1,22 @@
package com.qhy040404.fxxkmiuiad
-object Constants {
- const val SHIZUKU = "moe.shizuku.privileged.api"
- const val SHIZUKU_RELEASE = "https://github.com/RikkaApps/Shizuku/releases/"
+// Packages
+const val SHIZUKU = "moe.shizuku.privileged.api"
+const val SHIZUKU_RELEASE = "https://github.com/RikkaApps/Shizuku/releases/"
- const val MIUI_ROM = "com.miui.rom"
- val FUCKLIST = listOf(
- // CN
- "com.miui.hybrid",
- "com.miui.systemAdSolution",
+const val MIUI_ROM = "com.miui.rom"
+val FUCKLIST = listOf(
+ // CN
+ "com.miui.hybrid",
+ "com.miui.systemAdSolution",
- // GLOBAL
- "com.miui.msa.global"
- )
-}
\ No newline at end of file
+ // GLOBAL
+ "com.miui.msa.global"
+)
+
+// Shizuku Status
+const val Ok = 0
+const val Outdated = 1
+const val NotRunning = 2
+const val NotAuthorized = 3
+const val NotInstalled = 4
\ No newline at end of file
diff --git a/app/src/main/java/com/qhy040404/fxxkmiuiad/FxxkMIUIAdApp.kt b/app/src/main/java/com/qhy040404/fxxkmiuiad/FxxkMIUIAdApp.kt
deleted file mode 100644
index 03392b4..0000000
--- a/app/src/main/java/com/qhy040404/fxxkmiuiad/FxxkMIUIAdApp.kt
+++ /dev/null
@@ -1,14 +0,0 @@
-package com.qhy040404.fxxkmiuiad
-
-import android.app.Application
-
-class FxxkMIUIAdApp : Application() {
- override fun onCreate() {
- super.onCreate()
- app = this
- }
-
- companion object {
- lateinit var app: Application
- }
-}
\ No newline at end of file
diff --git a/app/src/main/java/com/qhy040404/fxxkmiuiad/MainComposeActivity.kt b/app/src/main/java/com/qhy040404/fxxkmiuiad/MainComposeActivity.kt
index 3bfdc77..cf2448e 100644
--- a/app/src/main/java/com/qhy040404/fxxkmiuiad/MainComposeActivity.kt
+++ b/app/src/main/java/com/qhy040404/fxxkmiuiad/MainComposeActivity.kt
@@ -28,7 +28,6 @@ import androidx.compose.runtime.remember
import androidx.compose.ui.Alignment
import androidx.compose.ui.Modifier
import androidx.compose.ui.platform.LocalContext
-import androidx.compose.ui.res.stringResource
import androidx.compose.ui.text.style.TextAlign
import androidx.compose.ui.unit.dp
import androidx.core.net.toUri
@@ -36,7 +35,7 @@ import com.qhy040404.fxxkmiuiad.theme.DayNightTheme
import com.qhy040404.fxxkmiuiad.utils.OsUtils
import com.qhy040404.fxxkmiuiad.utils.PackageUtils
import com.qhy040404.fxxkmiuiad.utils.PackageUtils.getApplicationEnableStateAsString
-import com.qhy040404.fxxkmiuiad.utils.ShizukuStatus
+import com.qhy040404.fxxkmiuiad.utils.PackageUtils.isPackageInstalled
import com.qhy040404.fxxkmiuiad.utils.ShizukuUtils
import rikka.shizuku.Shizuku
@@ -50,7 +49,7 @@ class MainComposeActivity : ComponentActivity() {
trigger.value = !trigger.value
} else {
runCatching {
- PackageUtils.startLaunchAppActivity(this, Constants.SHIZUKU)
+ PackageUtils.startLaunchAppActivity(this, SHIZUKU)
Toast.makeText(this, "授权失败,跳转到 Shizuku 手动授权", Toast.LENGTH_LONG).show()
}.onFailure {
Toast.makeText(this, "未检测到 Shizuku, 请手动前往 Sui 授权", Toast.LENGTH_LONG).show()
@@ -62,13 +61,8 @@ class MainComposeActivity : ComponentActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
Shizuku.addRequestPermissionResultListener(callback)
- packageList = Constants.FUCKLIST.filter {
- try {
- packageManager.getPackageInfo(it, 0)
- true
- } catch (e: PackageManager.NameNotFoundException) {
- false
- }
+ packageList = FUCKLIST.filter {
+ packageManager.isPackageInstalled(it)
}
enableEdgeToEdge()
@@ -92,21 +86,23 @@ class MainComposeActivity : ComponentActivity() {
return@Scaffold
}
- InternalRefresh(trigger.value)
+ ReloadTrigger(trigger.value)
val shizukuStatus = ShizukuUtils.checkStatus(context)
Column {
Row(modifier = Modifier.fillMaxWidth(), horizontalArrangement = Arrangement.SpaceAround) {
Text(
text = when (shizukuStatus) {
- ShizukuStatus.Ok, ShizukuStatus.Outdated, ShizukuStatus.NotAuthorized -> "Shizuku 已运行"
- ShizukuStatus.NotRunning, ShizukuStatus.NotInstalled -> "Shizuku 未运行"
+ Ok, Outdated, NotAuthorized -> "Shizuku 已运行"
+ NotRunning, NotInstalled -> "Shizuku 未运行"
+ else -> throw IllegalStateException()
}, textAlign = TextAlign.Center
)
Text(
text = when (shizukuStatus) {
- ShizukuStatus.Ok, ShizukuStatus.Outdated -> "Shizuku 已授权"
- ShizukuStatus.NotRunning, ShizukuStatus.NotAuthorized, ShizukuStatus.NotInstalled -> "Shizuku 未授权"
+ Ok, Outdated -> "Shizuku 已授权"
+ NotRunning, NotAuthorized, NotInstalled -> "Shizuku 未授权"
+ else -> throw IllegalStateException()
}, textAlign = TextAlign.Center
)
}
@@ -118,13 +114,14 @@ class MainComposeActivity : ComponentActivity() {
contentAlignment = Alignment.Center
) {
Text(text = when (shizukuStatus) {
- ShizukuStatus.Ok -> packageList.associateWith {
+ Ok -> packageList.associateWith {
packageManager.getApplicationEnableStateAsString(it)
}.entries.joinToString("\n") { (name, state) -> "$name: $state" }
- ShizukuStatus.Outdated -> "Shizuku 版本过低,请更新"
- ShizukuStatus.NotInstalled -> "Shizuku 未安装"
- ShizukuStatus.NotRunning, ShizukuStatus.NotAuthorized -> ""
+ Outdated -> "Shizuku 版本过低,请更新"
+ NotInstalled -> "Shizuku 未安装"
+ NotRunning, NotAuthorized -> ""
+ else -> throw IllegalStateException()
}, textAlign = TextAlign.Center)
}
@@ -135,14 +132,14 @@ class MainComposeActivity : ComponentActivity() {
horizontalArrangement = Arrangement.SpaceAround
) {
when (shizukuStatus) {
- ShizukuStatus.Ok -> {
+ Ok -> {
EnableBtn()
DisableBtn()
}
- ShizukuStatus.Outdated, ShizukuStatus.NotInstalled -> InstallBtn()
- ShizukuStatus.NotRunning -> JumpBtn()
- ShizukuStatus.NotAuthorized -> RequestPermissionBtn()
+ Outdated, NotInstalled -> InstallBtn()
+ NotRunning -> JumpBtn()
+ NotAuthorized -> RequestPermissionBtn()
}
}
}
@@ -176,7 +173,7 @@ fun EnableBtn() {
showToast.value = true
}) {
- Text(stringResource(id = R.string.enable))
+ Text("启用")
}
LaunchedEffect(showToast.value) {
@@ -207,7 +204,7 @@ fun DisableBtn() {
showToast.value = true
}) {
- Text(stringResource(id = R.string.disable))
+ Text("禁用")
}
LaunchedEffect(showToast.value) {
@@ -225,11 +222,11 @@ fun InstallBtn() {
Button(onClick = {
runCatching {
context.startActivity(Intent(Intent.ACTION_VIEW).apply {
- data = Constants.SHIZUKU_RELEASE.toUri()
+ data = SHIZUKU_RELEASE.toUri()
})
}
}) {
- Text(stringResource(id = R.string.install_shizuku))
+ Text("安装 Shizuku")
}
}
@@ -238,10 +235,10 @@ fun JumpBtn() {
val context = LocalContext.current
Button(onClick = {
runCatching {
- PackageUtils.startLaunchAppActivity(context, Constants.SHIZUKU)
+ PackageUtils.startLaunchAppActivity(context, SHIZUKU)
}
}) {
- Text(stringResource(id = R.string.open_shizuku))
+ Text("跳转到 Shizuku")
}
}
@@ -252,10 +249,10 @@ fun RequestPermissionBtn() {
Shizuku.requestPermission(0)
}
}) {
- Text(stringResource(id = R.string.request_shizuku))
+ Text("申请 Shizuku 授权")
}
}
@Composable
-fun InternalRefresh(trigger: Any) {
+fun ReloadTrigger(trigger: Any) {
}
diff --git a/app/src/main/java/com/qhy040404/fxxkmiuiad/compat/PackageManagerCompat.kt b/app/src/main/java/com/qhy040404/fxxkmiuiad/compat/PackageManagerCompat.kt
deleted file mode 100644
index 8a2408b..0000000
--- a/app/src/main/java/com/qhy040404/fxxkmiuiad/compat/PackageManagerCompat.kt
+++ /dev/null
@@ -1,36 +0,0 @@
-package com.qhy040404.fxxkmiuiad.compat
-
-import android.content.Intent
-import android.content.pm.PackageInfo
-import android.content.pm.PackageManager
-import android.content.pm.ResolveInfo
-import com.qhy040404.fxxkmiuiad.utils.OsUtils
-
-class PackageManagerCompat(private val packageManager: PackageManager) {
- fun getPackageInfo(packageName: String, flags: Int): PackageInfo? {
- return runCatching {
- if (OsUtils.atLeastT()) {
- packageManager.getPackageInfo(packageName, PackageManager.PackageInfoFlags.of(flags.toLong()))
- } else {
- packageManager.getPackageInfo(packageName, flags)
- }
- }.getOrNull()
- }
-
- fun queryIntentActivities(intent: Intent, flags: Int): List {
- return if (OsUtils.atLeastT()) {
- packageManager.queryIntentActivities(
- intent,
- PackageManager.ResolveInfoFlags.of(flags.toLong())
- )
- } else {
- packageManager.queryIntentActivities(intent, flags)
- }
- }
-
- companion object {
- fun PackageManager.asCompat(): PackageManagerCompat {
- return PackageManagerCompat(this)
- }
- }
-}
\ No newline at end of file
diff --git a/app/src/main/java/com/qhy040404/fxxkmiuiad/utils/OsUtils.kt b/app/src/main/java/com/qhy040404/fxxkmiuiad/utils/OsUtils.kt
index d0fc306..830bd9d 100644
--- a/app/src/main/java/com/qhy040404/fxxkmiuiad/utils/OsUtils.kt
+++ b/app/src/main/java/com/qhy040404/fxxkmiuiad/utils/OsUtils.kt
@@ -3,21 +3,16 @@ package com.qhy040404.fxxkmiuiad.utils
import android.content.Context
import android.os.Build
import androidx.annotation.ChecksSdkIntAtLeast
-import com.qhy040404.fxxkmiuiad.Constants
-import com.qhy040404.fxxkmiuiad.compat.PackageManagerCompat.Companion.asCompat
+import com.qhy040404.fxxkmiuiad.MIUI_ROM
+import com.qhy040404.fxxkmiuiad.utils.PackageUtils.isPackageInstalled
object OsUtils {
- @ChecksSdkIntAtLeast(api = Build.VERSION_CODES.TIRAMISU)
- fun atLeastT(): Boolean {
- return Build.VERSION.SDK_INT >= 33
- }
-
@ChecksSdkIntAtLeast(api = Build.VERSION_CODES.VANILLA_ICE_CREAM)
fun atLeastV(): Boolean {
return Build.VERSION.SDK_INT >= 35
}
fun isMiui(context: Context): Boolean {
- return context.packageManager.asCompat().getPackageInfo(Constants.MIUI_ROM, 0) != null
+ return context.packageManager.isPackageInstalled(MIUI_ROM)
}
}
\ No newline at end of file
diff --git a/app/src/main/java/com/qhy040404/fxxkmiuiad/utils/PackageUtils.kt b/app/src/main/java/com/qhy040404/fxxkmiuiad/utils/PackageUtils.kt
index cfb8324..b5c49ba 100644
--- a/app/src/main/java/com/qhy040404/fxxkmiuiad/utils/PackageUtils.kt
+++ b/app/src/main/java/com/qhy040404/fxxkmiuiad/utils/PackageUtils.kt
@@ -4,8 +4,6 @@ import android.content.Context
import android.content.Intent
import android.content.pm.IPackageManager
import android.content.pm.PackageManager
-import com.qhy040404.fxxkmiuiad.BuildConfig
-import com.qhy040404.fxxkmiuiad.compat.PackageManagerCompat.Companion.asCompat
import org.lsposed.hiddenapibypass.HiddenApiBypass
import rikka.shizuku.ShizukuBinderWrapper
import rikka.shizuku.SystemServiceHelper
@@ -30,6 +28,14 @@ object PackageUtils {
}
}
+ fun PackageManager.isPackageInstalled(pkg: String): Boolean {
+ return try {
+ getPackageInfo(pkg, 0) != null
+ } catch (_: PackageManager.NameNotFoundException) {
+ false
+ }
+ }
+
fun startLaunchAppActivity(context: Context, packageName: String?) {
if (packageName == null) {
return
@@ -38,7 +44,7 @@ object PackageUtils {
val intent = Intent(Intent.ACTION_MAIN, null)
.addCategory(Intent.CATEGORY_LAUNCHER)
.setPackage(packageName)
- val info = context.packageManager.asCompat().queryIntentActivities(intent, 0)
+ val info = context.packageManager.queryIntentActivities(intent, 0)
launcherActivity = info.getOrNull(0)?.activityInfo?.name.orEmpty()
val launchIntent = Intent(Intent.ACTION_MAIN)
.addCategory(Intent.CATEGORY_LAUNCHER)
@@ -50,7 +56,7 @@ object PackageUtils {
fun setApplicationEnabledSetting(packageName: String, state: Int) {
IPackageManager.Stub.asInterface(
ShizukuBinderWrapper(SystemServiceHelper.getSystemService("package"))
- ).setApplicationEnabledSetting(packageName, state, 0, 0, BuildConfig.APPLICATION_ID)
+ ).setApplicationEnabledSetting(packageName, state, 0, 0, "com.qhy040404.fxxkmiuiad")
}
fun setPackagesSuspendedAsUser(packageName: String, suspended: Boolean) {
diff --git a/app/src/main/java/com/qhy040404/fxxkmiuiad/utils/ShizukuStatus.kt b/app/src/main/java/com/qhy040404/fxxkmiuiad/utils/ShizukuStatus.kt
deleted file mode 100644
index dc65b9a..0000000
--- a/app/src/main/java/com/qhy040404/fxxkmiuiad/utils/ShizukuStatus.kt
+++ /dev/null
@@ -1,9 +0,0 @@
-package com.qhy040404.fxxkmiuiad.utils
-
-enum class ShizukuStatus {
- Ok,
- Outdated,
- NotRunning,
- NotAuthorized,
- NotInstalled
-}
\ No newline at end of file
diff --git a/app/src/main/java/com/qhy040404/fxxkmiuiad/utils/ShizukuUtils.kt b/app/src/main/java/com/qhy040404/fxxkmiuiad/utils/ShizukuUtils.kt
index 113d713..5e5dc47 100644
--- a/app/src/main/java/com/qhy040404/fxxkmiuiad/utils/ShizukuUtils.kt
+++ b/app/src/main/java/com/qhy040404/fxxkmiuiad/utils/ShizukuUtils.kt
@@ -2,23 +2,24 @@ package com.qhy040404.fxxkmiuiad.utils
import android.content.Context
import android.content.pm.PackageManager
-import com.qhy040404.fxxkmiuiad.Constants
-import com.qhy040404.fxxkmiuiad.compat.PackageManagerCompat.Companion.asCompat
+import com.qhy040404.fxxkmiuiad.NotAuthorized
+import com.qhy040404.fxxkmiuiad.NotInstalled
+import com.qhy040404.fxxkmiuiad.NotRunning
+import com.qhy040404.fxxkmiuiad.Ok
+import com.qhy040404.fxxkmiuiad.Outdated
+import com.qhy040404.fxxkmiuiad.SHIZUKU
+import com.qhy040404.fxxkmiuiad.utils.PackageUtils.isPackageInstalled
import rikka.shizuku.Shizuku
import rikka.sui.Sui
object ShizukuUtils {
- fun checkStatus(context: Context): ShizukuStatus {
- if (context.packageManager.asCompat().getPackageInfo(
- Constants.SHIZUKU,
- 0
- ) == null && !Sui.isSui()
- ) return ShizukuStatus.NotInstalled
- if (!Shizuku.pingBinder()) return ShizukuStatus.NotRunning
- if (Shizuku.checkSelfPermission() != PackageManager.PERMISSION_GRANTED && context.checkSelfPermission("moe.shizuku.manager.permission.API_V23") != PackageManager.PERMISSION_GRANTED) return ShizukuStatus.NotAuthorized
- if (Shizuku.getVersion() < 10) return ShizukuStatus.Outdated
+ fun checkStatus(context: Context): Int {
+ if (!context.packageManager.isPackageInstalled(SHIZUKU) && !Sui.isSui()) return NotInstalled
+ if (!Shizuku.pingBinder()) return NotRunning
+ if (Shizuku.checkSelfPermission() != PackageManager.PERMISSION_GRANTED && context.checkSelfPermission("moe.shizuku.manager.permission.API_V23") != PackageManager.PERMISSION_GRANTED) return NotAuthorized
+ if (Shizuku.getVersion() < 10) return Outdated
- return ShizukuStatus.Ok
+ return Ok
}
}
diff --git a/app/src/main/res/mipmap-hdpi/ic_launcher.webp b/app/src/main/res/mipmap-hdpi/ic_launcher.webp
deleted file mode 100644
index c209e78..0000000
Binary files a/app/src/main/res/mipmap-hdpi/ic_launcher.webp and /dev/null differ
diff --git a/app/src/main/res/mipmap-hdpi/ic_launcher_round.webp b/app/src/main/res/mipmap-hdpi/ic_launcher_round.webp
deleted file mode 100644
index b2dfe3d..0000000
Binary files a/app/src/main/res/mipmap-hdpi/ic_launcher_round.webp and /dev/null differ
diff --git a/app/src/main/res/mipmap-mdpi/ic_launcher.webp b/app/src/main/res/mipmap-mdpi/ic_launcher.webp
deleted file mode 100644
index 4f0f1d6..0000000
Binary files a/app/src/main/res/mipmap-mdpi/ic_launcher.webp and /dev/null differ
diff --git a/app/src/main/res/mipmap-mdpi/ic_launcher_round.webp b/app/src/main/res/mipmap-mdpi/ic_launcher_round.webp
deleted file mode 100644
index 62b611d..0000000
Binary files a/app/src/main/res/mipmap-mdpi/ic_launcher_round.webp and /dev/null differ
diff --git a/app/src/main/res/mipmap-xhdpi/ic_launcher.webp b/app/src/main/res/mipmap-xhdpi/ic_launcher.webp
deleted file mode 100644
index 948a307..0000000
Binary files a/app/src/main/res/mipmap-xhdpi/ic_launcher.webp and /dev/null differ
diff --git a/app/src/main/res/mipmap-xhdpi/ic_launcher_round.webp b/app/src/main/res/mipmap-xhdpi/ic_launcher_round.webp
deleted file mode 100644
index 1b9a695..0000000
Binary files a/app/src/main/res/mipmap-xhdpi/ic_launcher_round.webp and /dev/null differ
diff --git a/app/src/main/res/mipmap-xxhdpi/ic_launcher.webp b/app/src/main/res/mipmap-xxhdpi/ic_launcher.webp
deleted file mode 100644
index 28d4b77..0000000
Binary files a/app/src/main/res/mipmap-xxhdpi/ic_launcher.webp and /dev/null differ
diff --git a/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.webp b/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.webp
deleted file mode 100644
index 9287f50..0000000
Binary files a/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.webp and /dev/null differ
diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml
index 5f8adde..40fc866 100644
--- a/app/src/main/res/values/strings.xml
+++ b/app/src/main/res/values/strings.xml
@@ -1,8 +1,3 @@
- FxxkMIUIAd
- 启用
- 禁用
- 安装 Shizuku
- 跳转到 Shizuku
- 申请 Shizuku 授权
+ FxxkMIUIAd
\ No newline at end of file
diff --git a/app/src/main/res/xml/backup_rules.xml b/app/src/main/res/xml/backup_rules.xml
deleted file mode 100644
index fa0f996..0000000
--- a/app/src/main/res/xml/backup_rules.xml
+++ /dev/null
@@ -1,13 +0,0 @@
-
-
-
-
\ No newline at end of file
diff --git a/app/src/main/res/xml/data_extraction_rules.xml b/app/src/main/res/xml/data_extraction_rules.xml
deleted file mode 100644
index 9ee9997..0000000
--- a/app/src/main/res/xml/data_extraction_rules.xml
+++ /dev/null
@@ -1,19 +0,0 @@
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/build.gradle.kts b/build.gradle.kts
index 50f74ab..239b2e1 100644
--- a/build.gradle.kts
+++ b/build.gradle.kts
@@ -4,4 +4,5 @@ plugins {
id("com.android.library") version "8.7.2" apply false
id("org.jetbrains.kotlin.android") version "2.0.21" apply false
id("org.jetbrains.kotlin.plugin.compose") version "2.0.21" apply false
+ id("com.qhy04.gradle.android.res_opt") version "1.0.3" apply false
}
diff --git a/gradle.properties b/gradle.properties
index e0a6e73..44541a1 100644
--- a/gradle.properties
+++ b/gradle.properties
@@ -3,5 +3,4 @@ org.gradle.parallel=true
org.gradle.caching=true
org.gradle.configuration-cache=true
android.enableAppCompileTimeRClass=true
-android.enableBuildConfigAsBytecode=true
android.useAndroidX=true
\ No newline at end of file