program story

프로덕션에 업로드하려고 할 때 Android 서명 APK가 서명되지 않은 APK로 표시됨

inputbox 2020. 11. 16. 08:15
반응형

프로덕션에 업로드하려고 할 때 Android 서명 APK가 서명되지 않은 APK로 표시됨


Android Studio 2.3에서 내 APK에 서명했습니다 (빌드-> 서명 된 APK 생성). Google Play 스토어에 업로드하려고 할 때 서명되지 않은 APK를 업로드했다는 오류가 표시됩니다. 왜 그런 일이 일어나고 어떻게 해결해야하는지 누구든지 대답 할 수 있습니까?


Android Studio 2.3에서 서명 된 APK를 생성하는 동안 V2 (Full APK Signature) 대신 V1 (Jar Signature)을 확인하면 성공적으로 업로드되었습니다.


Android 7.0에는 APK 파일의 무단 변경으로부터 더 빠른 앱 설치 시간과 더 많은 보호를 제공하는 새로운 앱 서명 체계 인 APK 서명 체계 v2가 도입되었습니다.

서명 된 APK를 생성하는 동안 두 개의 확인란이 있습니다.

  1. V1 (Jar 서명)
  2. V2 (전체 apk 서명)

세 가지 선택이 가능합니다.

  1. V1 선택 (이전 버전의 서명)-apk가 성공적으로 업로드됩니다.

  2. V2 선택 (최신 버전의 서명)-이 옵션 만 선택하면 작동하지 않습니다.

  3. V1 및 V2 선택 (이전 및 최신 버전의 경우)-apk가 성공적으로 업로드됩니다.

V2 만 선택해도 작동하지 않는 이유는 무엇입니까?

APK 서명 체계 v2가 Android 7.0 (Nougat)에 도입 되었기 때문입니다. Android 6.0 (Marshmallow) 및 이전 기기에 APK를 설치할 수있게하려면 v2 체계로 서명하기 전에 JAR 서명을 사용하여 APK에 서명해야합니다.

자세한 내용은 여기로 이동하십시오.


v1v2 모두에 대해 서명되었습니다 . 성공적으로 업로드됩니다.


릴리스 빌드를 수행하는 동안 v2 서명 만 사용하고 있기 때문입니다.

그렇다면 v1과 v2는 무엇을 언급합니까?

v1은 기본 서명 메커니즘이고 v2는 추가 된 최신 메커니즘으로 훨씬 빠르게 확인됩니다. 이는 v2 서명 APK가 Android Nougat (Android 7.0, API 레벨 24) 이상에서 조금 더 빠르게 설치 / 업데이트됨을 의미합니다.

그래서 어떻게해야합니까?

변경하지 않고 앱에 서명하려는 경우

기본값 인 v1 (jar 서명 만 해당)을 확인하십시오.

7.x 버전에 대한 최신 서명 및 지원을 원하는 경우

앱 크기도 줄이는 v2 (Full Apk 서명)를 확인하십시오.

앱을 더 작게 만들고 싶다면 더 빠르게 설치하고 모든 Android 버전과 호환됩니다.

v1과 v2를 모두 확인하십시오.

PS : 파이프를 사용하여 빌드하는 것 외에 Studio로 앱에 서명하는 경우에만 적용됩니다.

더 많은 참조 링크


V2를 사용하여 APK에 서명하는 방법

https://developer.android.com/studio/command-line/apksigner.html

1 단계) Android Studio에서보기> 도구 창> 터미널을 선택합니다.

    gradlew assembleRelease

2) zipalign을 사용하여 서명되지 않은 APK를 정렬합니다.

zipalign -v -p 4 my-app-unsigned.apk my-app-unsigned-aligned.apk

3) apksigner를 사용하여 개인 키로 APK에 서명합니다.

apksigner sign --ks my-release-key.jks my-app-unsigned-aligned.apk --out my-app-release.apk

참고 : apksigner 도구를 사용하려면 버전 24.0.3 이상의 Android SDK 빌드 도구가 설치되어 있어야합니다. SDK 관리자를 사용하여이 패키지를 업데이트 할 수 있습니다.

4) APK가 서명되었는지 확인합니다.

apksigner verify my-app-release.apk

참고 : 2-4 단계 명령 프롬프트에서 수행합니다. G : \ AndroidStudio \ Sdk \ build-tools \ 25.0.0 \


여기에 도달하면 Android Studio 3.3을 사용하고 서명 확인란을 선택했는지 여부에 관계없이 오류가 계속 발생하면 앱 / 빌드 폴더를 수동으로 삭제하십시오.

출처 : https://stackoverflow.com/a/54213942/787511


Google의 문제이며이 페이지 에서 이틀 전에 발행되었습니다 .

참고 URL : https://stackoverflow.com/questions/42605171/android-signed-apk-showing-as-unsigned-apk-when-trying-to-upload-to-production

반응형