Loading...
Loading...
Compare original and translation side by side
android {
defaultConfig {
versionCode = 10
versionName = "1.2.0"
}
buildTypes {
release {
isMinifyEnabled = true
isShrinkResources = true
proguardFiles(
getDefaultProguardFile("proguard-android-optimize.txt"),
"proguard-rules.pro"
)
signingConfig = signingConfigs.getByName("release")
}
}
}android {
defaultConfig {
versionCode = 10
versionName = "1.2.0"
}
buildTypes {
release {
isMinifyEnabled = true
isShrinkResources = true
proguardFiles(
getDefaultProguardFile("proguard-android-optimize.txt"),
"proguard-rules.pro"
)
signingConfig = signingConfigs.getByName("release")
}
}
}./gradlew bundleRelease./gradlew bundleRelease./gradlew clean bundleRelease./gradlew clean bundleRelease./gradlew clean test bundleRelease./gradlew clean test bundleReleaseundefinedundefinedundefinedundefinedapp/build/outputs/bundle/release/app-release.aabapp/build/outputs/bundle/release/app-release.aab./gradlew bundleRelease --parallel./gradlew bundleRelease --parallel./gradlew bundleRelease --build-cache./gradlew bundleRelease --build-cacheorg.gradle.jvmargs=-Xmx4g -XX:+HeapDumpOnOutOfMemoryError
org.gradle.parallel=true
org.gradle.caching=trueorg.gradle.jvmargs=-Xmx4g -XX:+HeapDumpOnOutOfMemoryError
org.gradle.parallel=true
org.gradle.caching=trueundefinedundefinedundefinedundefinedbundletool dump manifest --bundle=app-release.aab
bundletool dump resources --bundle=app-release.aabbundletool dump manifest --bundle=app-release.aab
bundletool dump resources --bundle=app-release.aabbundletool get-size total --bundle=app-release.aabbundletool get-size total --bundle=app-release.aabundefinedundefinedundefinedundefined// build.gradle.kts
plugins {
id("com.github.triplet.play") version "3.8.4"
}
play {
serviceAccountCredentials.set(file("play-service-account.json"))
track.set("internal") // internal, alpha, beta, production
defaultToAppBundles.set(true)
}// build.gradle.kts
plugins {
id("com.github.triplet.play") version "3.8.4"
}
play {
serviceAccountCredentials.set(file("play-service-account.json"))
track.set("internal") // internal, alpha, beta, production
defaultToAppBundles.set(true)
}./gradlew :app:bundleRelease./gradlew :app:bundleRelease./gradlew :app:bundleRelease \
:feature1:bundleRelease \
:feature2:bundleRelease./gradlew :app:bundleRelease \
:feature1:bundleRelease \
:feature2:bundleRelease| 에러 | 원인 | 해결 |
|---|---|---|
| Keystore was tampered with | 잘못된 비밀번호 | 비밀번호 확인 |
| No matching signing config | 서명 설정 누락 | signingConfigs 확인 |
| OutOfMemoryError | 메모리 부족 | gradle.properties에서 Xmx 증가 |
| R8 error | ProGuard 규칙 문제 | proguard-rules.pro 수정 |
| 错误 | 原因 | 解决方法 |
|---|---|---|
| Keystore was tampered with | 密码错误 | 检查密码 |
| No matching signing config | 缺少签名配置 | 检查signingConfigs |
| OutOfMemoryError | 内存不足 | 在gradle.properties中增加Xmx值 |
| R8 error | ProGuard规则问题 | 修改proguard-rules.pro |
undefinedundefinedundefinedundefined// 특정 리소스 유지
android {
buildTypes {
release {
// res/raw/keep.xml 사용
}
}
}<!-- res/raw/keep.xml -->
<?xml version="1.0" encoding="utf-8"?>
<resources xmlns:tools="http://schemas.android.com/tools"
tools:keep="@layout/some_layout,@drawable/some_image" />// 保留特定资源
android {
buildTypes {
release {
// 使用res/raw/keep.xml
}
}
}<!-- res/raw/keep.xml -->
<?xml version="1.0" encoding="utf-8"?>
<resources xmlns:tools="http://schemas.android.com/tools"
tools:keep="@layout/some_layout,@drawable/some_image" />- name: Build Release AAB
run: |
echo "${{ secrets.KEYSTORE_BASE64 }}" | base64 -d > keystore.jks
./gradlew bundleRelease
env:
RELEASE_STORE_FILE: keystore.jks
RELEASE_STORE_PASSWORD: ${{ secrets.KEYSTORE_PASSWORD }}
RELEASE_KEY_ALIAS: ${{ secrets.KEY_ALIAS }}
RELEASE_KEY_PASSWORD: ${{ secrets.KEY_PASSWORD }}- name: Build Release AAB
run: |
echo "${{ secrets.KEYSTORE_BASE64 }}" | base64 -d > keystore.jks
./gradlew bundleRelease
env:
RELEASE_STORE_FILE: keystore.jks
RELEASE_STORE_PASSWORD: ${{ secrets.KEYSTORE_PASSWORD }}
RELEASE_KEY_ALIAS: ${{ secrets.KEY_ALIAS }}
RELEASE_KEY_PASSWORD: ${{ secrets.KEY_PASSWORD }}app/build/outputs/bundle/release/app-release.aabapp/build/outputs/mapping/release/mapping.txtapp/build/outputs/bundle/release/app-release.aabapp/build/outputs/mapping/release/mapping.txt