답변:
누구나 Android Studio를 사용하여 릴리스 빌드 를 디버깅 하려면 다음 단계를 수행하십시오.
왼쪽 탐색 창 에서 앱 을 마우스 오른쪽 버튼으로 클릭하고 모듈 설정 열기를 클릭하십시오 .
서명 탭으로 이동하십시오. 서명 구성을 추가하고 정보를 입력하십시오. 키 체인도 선택하십시오.
- 사실로 의심 .
받는 사람 구성을 -Signing 설정 . (방금 만든 것).
gradle을 동기화하십시오. 즐겨!
있는지 확인 빌드 변종 으로 설정되어 디버그 (그리고 릴리스 (체크 안드로이드 Studio에서) 빌드가 변형 패널).
디버그로 설정하면 빌드 스크립트를 편집하지 않고 자동 생성 된 디버그 키 저장소로 앱에 자동 서명해야합니다.
그러나 릴리스 할 특정 키 저장소를 작성하고 구성해야합니다.
디버그 및 릴리스 모드를 다루는 공식 문서 : https://developer.android.com/tools/publishing/app-signing.html
항상 다음과 같이 build.gradle DSL 스크립트를 사용하여 빌드에 서명하십시오.
android {
signingConfigs {
debug {
storeFile file("debug.keystore")
}
myConfig {
storeFile file("other.keystore")
storePassword "android"
keyAlias "androidotherkey"
keyPassword "android"
}
}
buildTypes {
bar {
debuggable true
jniDebugBuild true
signingConfig signingConfigs.debug
}
foo {
debuggable false
jniDebugBuild false
signingConfig signingConfigs.myConfig
}
}
}
Android Studio와 관련된 Gradle 빌드 시스템을 조금 더 이해하려면 다음을 방문하십시오.
debug.keystore
에 위치한 .android
폴더? 프로젝트로 이동하지 않으면 전체 경로를 지정할 수 있습니다.
서명 된 APK를 성공적으로 디버깅 할 수있었습니다. 다음 절차를 따르십시오.
Build.gradle
모듈 세트에 대한 debuggable true
릴리스 빌드 유형누구나 Android Studio 3.5를 사용하여 개별 빌드 변형을 디버그 및 릴리스하려면 다음 단계를 따르십시오. 1. 빌드 변형을 릴리스 모드로 설정하십시오.
build.gradle
변경하십시오 buildTypes
.그런 다음 프로젝트를 실행하십시오. 행복한 코딩.
signingConfig는 buildTypes 앞에 있어야합니다.
signingConfigs {
debug {
storeFile file("debug.keystore")
}
myConfig {
storeFile file("other.keystore")
storePassword "android"
keyAlias "androidotherkey"
keyPassword "android"
}
}
buildTypes {
bar {
debuggable true
jniDebugBuild true
signingConfig signingConfigs.debug
}
foo {
debuggable false
jniDebugBuild false
signingConfig signingConfigs.myConfig
}
}
디버그 모드 에서 앱을 실행하려는 경우
1) 왼쪽 하단을보고 즐겨 찾기 위에 빌드 변형이 있습니다.
2) 빌드 변형을 클릭하십시오. 릴리스를 클릭하고 디버그를 선택하십시오
그것은 완벽하게 작동합니다!
Gradle Kotlin DSL의 경우
signingConfigs {
create("releaseConfig") {
storeFile = file("your keystore file path")
storePassword = "storePassword"
keyAlias = "keyAlias"
keyPassword = "keyPassword"
}
}
buildTypes {
getByName("release") {
signingConfig = signingConfigs.getByName("releaseConfig")
isMinifyEnabled = true
isShrinkResources = true
proguardFiles(getDefaultProguardFile("proguard-android.txt"), "proguard-rules.pro")
}
}
보안상의 이유로 서명되지 않은 APK를 Android에 설치할 수 없습니다. 따라서 서명되지 않은 APK 만있는 경우 서명해야합니다. 여기에 그 작업을 수행하는 방법입니다 : 링크
자체 서명 된 인증서로 APK에 서명 할 수 있습니다.
대안은 다음 중 하나 일 수 있습니다.
이 문제를 어떻게 해결했는지
빌드 변형을 릴리스 모드로 설정했기 때문에이 오류가 발생합니다. 빌드 모드로 설정하고 프로젝트를 다시 실행하십시오.
릴리스 모드에서 실행하려면 앱을 출시 할 때 정상적으로 수행하는 방식으로 서명 된 APK를 생성하십시오.
마침내 나를 위해 일한 이유는 모르겠습니다.
암호 끝을 클릭하여 암호를 선택하고 마우스를 움직여 암호를 선택하여 여러 번 복사하려고했습니다.
이상하지만 비밀번호를 두 번 클릭하여 복사해야만 작동합니다.
또한이 게시물에서 @NightFury가 설명하는 Open Module Settings> Signing ... 방법을 사용했습니다.