Skip to content

Commit 6d2004d

Browse files
committed
[NDGL-108] refactor: Proguard 설정 방식 변경 및 모듈별 consumer-rules 적용
1 parent 72caf70 commit 6d2004d

23 files changed

Lines changed: 24 additions & 200 deletions

app/build.gradle.kts

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -31,21 +31,26 @@ android {
3131
}
3232

3333
buildTypes {
34+
all {
35+
proguardFiles(
36+
getDefaultProguardFile("proguard-android-optimize.txt"),
37+
"proguard-rules.pro",
38+
)
39+
buildConfigField("String", "NDGL_API_KEY", "\"${localProperties.getProperty("NDGL_API_KEY", "")}\"")
40+
}
3441
debug {
3542
applicationIdSuffix = ".debug"
3643
isDebuggable = true
3744
isMinifyEnabled = false
3845
isShrinkResources = false
3946
buildConfigField("String", "NDGL_BASE_URL", "\"${localProperties.getProperty("NDGL_BASE_URL_DEBUG")}\"")
40-
buildConfigField("String", "NDGL_API_KEY", "\"${localProperties.getProperty("NDGL_API_KEY", "")}\"")
4147
}
4248
release {
4349
signingConfig = signingConfigs.getByName("release")
4450
isDebuggable = false
4551
isMinifyEnabled = true
4652
isShrinkResources = true
4753
buildConfigField("String", "NDGL_BASE_URL", "\"${localProperties.getProperty("NDGL_BASE_URL_RELEASE")}\"")
48-
buildConfigField("String", "NDGL_API_KEY", "\"${localProperties.getProperty("NDGL_API_KEY", "")}\"")
4954
}
5055
}
5156
}

build-logic/src/main/kotlin/NDGLAndroidLibraryPlugin.kt

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@ import convention.configureTimber
55
import org.gradle.api.Plugin
66
import org.gradle.api.Project
77
import org.gradle.kotlin.dsl.dependencies
8+
import util.libraryExtension
89
import util.libs
910

1011
class NDGLAndroidLibraryPlugin : Plugin<Project> {
@@ -19,6 +20,10 @@ class NDGLAndroidLibraryPlugin : Plugin<Project> {
1920
configureComposeAndroid()
2021
configureTimber()
2122

23+
libraryExtension.defaultConfig {
24+
consumerProguardFiles("consumer-rules.pro")
25+
}
26+
2227
dependencies {
2328
"implementation"(libs.findLibrary("kotlinx-immutable").get())
2429
}

build-logic/src/main/kotlin/NDGLDataPlugin.kt

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@ import convention.configureTimber
55
import org.gradle.api.Plugin
66
import org.gradle.api.Project
77
import org.gradle.kotlin.dsl.dependencies
8+
import util.libraryExtension
89
import util.libs
910

1011
class NDGLDataPlugin : Plugin<Project> {
@@ -19,6 +20,10 @@ class NDGLDataPlugin : Plugin<Project> {
1920
configureCoroutineAndroid()
2021
configureTimber()
2122

23+
libraryExtension.defaultConfig {
24+
consumerProguardFiles("consumer-rules.pro")
25+
}
26+
2227
if (path != ":data:core") {
2328
dependencies.add("implementation", project(":data:core"))
2429
}

build-logic/src/main/kotlin/convention/KotlinAndroid.kt

Lines changed: 0 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -20,15 +20,6 @@ internal fun Project.configureKotlinAndroid() {
2020
defaultConfig {
2121
minSdk = Configuration.MIN_SDK
2222
}
23-
buildTypes {
24-
getByName("release") {
25-
isMinifyEnabled = false
26-
proguardFiles(
27-
getDefaultProguardFile("proguard-android-optimize.txt"),
28-
"proguard-rules.pro",
29-
)
30-
}
31-
}
3223
compileOptions {
3324
sourceCompatibility = Configuration.JAVA_VERSION
3425
targetCompatibility = Configuration.JAVA_VERSION

core/base/consumer-rules.pro

Whitespace-only changes.

core/ui/consumer-rules.pro

Whitespace-only changes.

core/ui/proguard-rules.pro

Lines changed: 0 additions & 21 deletions
This file was deleted.

data/auth/consumer-rules.pro

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
-keep class com.yapp.ndgl.data.auth.model.** { *; }
2+
-keep interface com.yapp.ndgl.data.auth.api.** { *; }

data/auth/proguard-rules.pro

Lines changed: 0 additions & 21 deletions
This file was deleted.

data/core/consumer-rules.pro

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
-keep class com.yapp.ndgl.data.core.model.** { *; }
2+
-keep class com.yapp.ndgl.data.core.serializer.** { *; }

0 commit comments

Comments
 (0)