From 5d006e13fc525d0a2d748017b712d078e23180b1 Mon Sep 17 00:00:00 2001 From: easyhooon Date: Tue, 5 Aug 2025 10:44:59 +0900 Subject: [PATCH 1/4] [BOOK-219] chore: update .gitignore --- .gitignore | 1 + 1 file changed, 1 insertion(+) diff --git a/.gitignore b/.gitignore index ab92adc6..cf4b4700 100644 --- a/.gitignore +++ b/.gitignore @@ -29,6 +29,7 @@ render.experimental.xml # Keystore files *.jks *.keystore +keystore.properties # Google Services (e.g. APIs or Firebase) google-services.json From 7f78871c10c5085599188ea2bd9c8a5d9ad86a7b Mon Sep 17 00:00:00 2001 From: easyhooon Date: Tue, 5 Aug 2025 10:46:34 +0900 Subject: [PATCH 2/4] =?UTF-8?q?[BOOK-219]=20chore:=20dev,=20release=20?= =?UTF-8?q?=ED=99=98=EA=B2=BD=20=EB=B6=84=EB=A6=AC=20=EB=B0=8F=20signingCo?= =?UTF-8?q?nfigs=20=EC=84=A4=EC=A0=95=20=EC=A0=81=EC=9A=A9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/build.gradle.kts | 37 ++++++++++++++++--- app/src/main/AndroidManifest.xml | 2 +- app/src/main/res/values/strings.xml | 4 ++ .../src/main/res/values/strings.xml | 1 - 4 files changed, 37 insertions(+), 7 deletions(-) create mode 100644 app/src/main/res/values/strings.xml diff --git a/app/build.gradle.kts b/app/build.gradle.kts index dbcc91a3..64818624 100644 --- a/app/build.gradle.kts +++ b/app/build.gradle.kts @@ -1,6 +1,7 @@ @file:Suppress("INLINE_FROM_HIGHER_PLATFORM") import com.android.build.gradle.internal.cxx.configure.gradleLocalProperties +import java.util.Properties plugins { alias(libs.plugins.booket.android.application) @@ -11,14 +12,35 @@ plugins { android { namespace = "com.ninecraft.booket" - defaultConfig { - buildConfigField("String", "KAKAO_NATIVE_APP_KEY", getApiKey("KAKAO_NATIVE_APP_KEY")) - manifestPlaceholders["KAKAO_NATIVE_APP_KEY"] = getApiKey("KAKAO_NATIVE_APP_KEY").trim('"') + signingConfigs { + create("release") { + val propertiesFile = rootProject.file("keystore.properties") + val properties = Properties() + properties.load(propertiesFile.inputStream()) + storeFile = file(properties["STORE_FILE"] as String) + storePassword = properties["STORE_PASSWORD"] as String + keyAlias = properties["KEY_ALIAS"] as String + keyPassword = properties["KEY_PASSWORD"] as String + } } buildTypes { - release { - isMinifyEnabled = false + getByName("debug") { + isDebuggable = true + applicationIdSuffix = ".dev" + manifestPlaceholders += mapOf( + "appName" to "@string/app_name_dev", + ) + } + + getByName("release") { + isDebuggable = false + isMinifyEnabled = true + isShrinkResources = true + signingConfig = signingConfigs.getByName("release") + manifestPlaceholders += mapOf( + "appName" to "@string/app_name", + ) proguardFiles( getDefaultProguardFile("proguard-android-optimize.txt"), "proguard-rules.pro", @@ -26,6 +48,11 @@ android { } } + defaultConfig { + buildConfigField("String", "KAKAO_NATIVE_APP_KEY", getApiKey("KAKAO_NATIVE_APP_KEY")) + manifestPlaceholders["KAKAO_NATIVE_APP_KEY"] = getApiKey("KAKAO_NATIVE_APP_KEY").trim('"') + } + buildFeatures { buildConfig = true } diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index 89d5d930..388f75bd 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -15,7 +15,7 @@ android:dataExtractionRules="@xml/data_extraction_rules" android:fullBackupContent="@xml/backup_rules" android:icon="@mipmap/ic_launcher" - android:label="@string/app_name" + android:label="${appName}" android:networkSecurityConfig="@xml/network_security_config" android:roundIcon="@mipmap/ic_launcher_round" android:supportsRtl="true" diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml new file mode 100644 index 00000000..83483fc1 --- /dev/null +++ b/app/src/main/res/values/strings.xml @@ -0,0 +1,4 @@ + + Reed + Reed.dev + diff --git a/core/designsystem/src/main/res/values/strings.xml b/core/designsystem/src/main/res/values/strings.xml index 514c5ee6..90f1c070 100644 --- a/core/designsystem/src/main/res/values/strings.xml +++ b/core/designsystem/src/main/res/values/strings.xml @@ -1,5 +1,4 @@ - Reed 네트워크 연결이 불안해요.\n잠시후 다시 이용해주세요. 이용에 불편을 드려 죄송합니다.\n잠시후 다시 이용해주세요. 알 수 없는 오류가 발생하였습니다. From eb89b8b2bab9bd62fd3ed4ce268a62bf90261922 Mon Sep 17 00:00:00 2001 From: easyhooon Date: Tue, 5 Aug 2025 10:58:22 +0900 Subject: [PATCH 3/4] =?UTF-8?q?[BOOK-219]=20chore:=20.jks=20=ED=8C=8C?= =?UTF-8?q?=EC=9D=BC=20=EB=A3=A8=ED=8A=B8=20=EB=94=94=EB=A0=89=ED=86=A0?= =?UTF-8?q?=EB=A6=AC=EC=97=90=20=EC=9C=84=EC=B9=98=20=ED=95=A0=20=EC=88=98?= =?UTF-8?q?=20=EC=9E=88=EB=8F=84=EB=A1=9D=20=EB=B3=80=EA=B2=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/build.gradle.kts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/build.gradle.kts b/app/build.gradle.kts index 64818624..099d299f 100644 --- a/app/build.gradle.kts +++ b/app/build.gradle.kts @@ -17,7 +17,7 @@ android { val propertiesFile = rootProject.file("keystore.properties") val properties = Properties() properties.load(propertiesFile.inputStream()) - storeFile = file(properties["STORE_FILE"] as String) + storeFile = rootProject.file(properties["STORE_FILE"] as String) storePassword = properties["STORE_PASSWORD"] as String keyAlias = properties["KEY_ALIAS"] as String keyPassword = properties["KEY_PASSWORD"] as String From ec06d98069db88ef37e7dd2c47ed729e5fc3780f Mon Sep 17 00:00:00 2001 From: easyhooon Date: Tue, 5 Aug 2025 13:56:50 +0900 Subject: [PATCH 4/4] =?UTF-8?q?[BOOK-219]=20chore:=20CI=20=EB=82=B4=20keys?= =?UTF-8?q?tore.properties=20generate=20step=20=EC=B6=94=EA=B0=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .github/workflows/android-ci.yml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/.github/workflows/android-ci.yml b/.github/workflows/android-ci.yml index fd9210f0..c793730f 100644 --- a/.github/workflows/android-ci.yml +++ b/.github/workflows/android-ci.yml @@ -39,6 +39,10 @@ jobs: run: | echo '${{ secrets.LOCAL_PROPERTIES }}' >> ./local.properties + - name: Generate keystore.properties + run: | + echo '${{ secrets.KEYSTORE_PROPERTIES }}' >> ./keystore.properties + - name: Code style checks run: | ./gradlew ktlintCheck detekt