development

app-debug.apk와 app-debug-unaligned.apk의 차이점

big-blog 2020. 7. 26. 11:36
반응형

app-debug.apk와 app-debug-unaligned.apk의 차이점


빌드 변형이 "디버그"모드로 설정된 android studio에서 apk의 두 가지 출력을 발견했습니다.

  • app-debug.apk
  • app-debug-unaligned.apk

그 파일들 사이의 차이점은 무엇입니까?


정렬되지 않은 APK는 단지 중간 APK입니다. 먼저 정렬되지 않은 APK가 생성됩니다. 그런 다음 정렬되지 않은 apk가 정렬되고 app-debug.apk 인 정렬 된 apk가 생성됩니다. 자세한 내용은 여기를 참조하십시오 .


짧은 답변:

app-debug-unaligned.apk= 정렬되지 않은 서명 된 APK
app-debug.apk= 정렬 된 서명 된 APK (zipalign을 사용하여 최적화 된 RAM)


긴 답변

차이점을 이해하려면 다음 사항을 알아야합니다.

앱 서명 프로세스

  • 개인 키 생성 (keytool)
  • 서명되지 않은 APK-> 정렬되지 않은 서명되지 않은 APK를 얻기 위해 컴파일
  • 개인 키 (jarsigner) -> 정렬되지 않은 서명 된 APK를 사용하여 디버그 / 릴리스 모드로 앱 서명
  • APK 정렬 (zipalign) -> 정렬 된 서명 된 APK

전체 서명 프로세스가 여기 에 설명되어 있습니다 .

왜 중간체가 필요 app-debug-unaligned.apk합니까?

당과 같은 문서 :

주의 : zipalign은 개인 키로 .apk 파일에 서명 한 후에 만 수행해야합니다 . 서명하기 전에 zipalign을 수행하면 서명 절차가 정렬을 취소합니다.

장점은 무엇입니까? zipalign?

장점은 정렬 된 APK가 RAM 사용에 최적화되어 있으므로 장치에서 더 적은 RAM을 소비한다는 것입니다. 로부터 문서 :

zipalign은 Android 애플리케이션 (.apk) 파일에 중요한 최적화를 제공하는 아카이브 정렬 도구입니다. .... 이점은 응용 프로그램을 실행할 때 소비되는 RAM의 양이 줄어든다는 것입니다.

참고 URL : https://stackoverflow.com/questions/30366905/difference-between-app-debug-apk-and-app-debug-unaligned-apk

반응형