code

APK 서명 오류 : 키 저장소에서 키를 읽지 못했습니다.

codestyles 2020. 11. 27. 08:07
반응형

APK 서명 오류 : 키 저장소에서 키를 읽지 못했습니다.


intellij 및 gradle에서 Android 앱을 개발 중입니다. 다음 방법을 사용하여 키 저장소 파일을 생성하십시오.

keytool -genkey -v -keystore my-release-key.keystore -alias alias_name -keyalg RSA -keysize 2048 -validity 10000

그런 다음 build.gradle의 키 저장소 파일을 사용했습니다.

signingConfigs {
    robert {
        storePassword 'robert'
        storeFile file('/Users/bournewang/Documents/Project/android.keystore')
        keyPassword 'robert'
        keyAlias 'mike'
    }
}

마지막으로 서명 된 apk 파일을 생성하려고 할 때 : ./gradlew assembleRelease

오류가 발생합니다.

': Myexample : packageRelease'작업을 실행하지 못했습니다.

키 저장소에서 키를 읽지 못했습니다.


먼저 키 저장소 파일을 확인하십시오. 예제에서는 my-release-key.keystore라는 이름으로 파일을 생성합니다. 정확하고 폴더 Users/bournewang/Documents/Project확인 별칭 에 실제로 존재하는 경우 예에서는 -alias alias_name 이지만 구성에서는 별칭 mike 를 지정했습니다.


무엇이 잘못되었는지 알아 내기 위해 gradle의 signingReport명령을 사용할 수 있습니다 .

Mac :

./gradlew signingReport

Windows의 경우 :

gradlew signingReport

키 저장소 파일에 대한 키 별명이 존재하지 않을 가능성이 높습니다.

답변 은 서명 문제를 해결합니다.)


제거 double-quotes하면 내 문제가 해결되었습니다.

DEBUG_STORE_PASSWORD=androiddebug
DEBUG_KEY_ALIAS=androiddebug
DEBUG_KEY_PASSWORD=androiddebug

제 경우에는 다른 소스에서 텍스트를 복사하는 동안 어떻게 든 클립 보드 항목 끝에 공백이 포함되었습니다. 이렇게하면 키 암호 끝에 공백이 있습니다.


서명 구성을 사용하지 않고 명령 줄에 모든 매개 변수를 입력하여 Cordova Release 명령을 테스트하려는 사람의 경우, 비밀번호에 특수 문자가있는 경우 작은 따옴표로 비밀번호를 묶어야 할 수 있습니다.

cordova run android --release -- --keystore=../my-release-key.keystore --storePassword='password' --alias=alias_name --password='password'

파일 이름이나 별칭뿐만 아니라 매개 변수 중 하나 일 수 있습니다. 저에게는 키 암호였습니다.

참고 URL : https://stackoverflow.com/questions/20453249/apk-signing-error-failed-to-read-key-from-keystore

반응형