다음을 통해 공유


Android용 코드 기호

이 문서에서는 Power Apps 래핑을 위해 Android(APK) 앱에 수동으로 코드 서명을 하는 방법을 설명합니다. 래핑 프로젝트를 만들고 빌드할 때 플랫폼 중 하나로 Android를 선택한 경우 앱을 Android에 서명하세요.

중요

Google Play 배포를 위해 AAB 앱에 서명하려면 앱 서명을 참조하세요.

시작하기 전에

필수 소프트웨어

시작하기 전에 다음을 설치하고 설정합니다.

사전 요구 사항

필요 항목:

  • 해시 키를 만들 응용 프로그램 이름입니다.
  • 로그인할 최신 APK 파일.

참고

수동 서명에는 .jks 확장자를 사용하고 자동 서명에는 .pfx 확장자를 사용합니다.

키 및 서명 해시 생성

참고

앱 등록을 생성할 때 이미 키와 서명 해시를 생성한 경우 수동 서명으로 건너뜁니다.

환경 변수 설정

환경 변수를 설정하지 않는 경우:

  1. Android Studio 및 OpenSSL을 다운로드하여 설치합니다.
  2. PATH 환경 변수에 keytoolopenssl을 추가합니다.
    • PATH에 C:\Program Files\Android\Android Studio\jbr\bin을 추가합니다.
    • openssl.exe의 경로(예: C:\Program Files\OpenSSL-Win64\bin)를 PATH에 추가합니다.

수동 서명 프로세스의 경우

서명 해시 키 생성

관리자 권한으로 명령 프롬프트에서 다음 명령을 실행하여 키를 생성합니다.

keytool -genkey -alias powerappswrap -keyalg RSA -keystore powerappswrap.jks -keysize 2048 -validity 10000

메시지가 표시되면 다음을 수행합니다.

  1. 키 저장소의 비밀번호를 입력하십시오.
  2. 이름, 조직, 위치 및 기타 필수 세부 정보를 입력합니다.
  3. 정보를 확인합니다.

이전 예의 매개 변수를 사용하는 keytool 명령 스크린샷.

인증서 생성

이 명령을 실행하여 인증서를 생성합니다

keytool -exportcert -alias powerappswrap -keystore powerappswrap.jks | openssl sha1 -binary | openssl base64

메시지가 표시되면 이전에 만든 키 저장소 암호를 입력합니다.

이전에 보여준 예의 매개 변수를 사용하는 keytool 명령 스크린샷.

설명된 매개 변수:

매개 변수 Description
genkey 키 생성 명령
별칭 키 저장소 항목의 별칭
keyalg 키 알고리즘 이름
keystore 키 저장소의 이름
keysize 각 키의 크기
validity 키의 유효 기간(일)

자동 키 자격 증명 모음 서명 프로세스의 경우

서명 해시 키 생성

관리자 권한으로 명령 프롬프트를 열고 다음 명령을 실행하여 키를 생성합니다.

keytool -genkey -alias powerappswrap -keyalg RSA -keystore powerappswrap.pfx -keysize 2048 -validity 10000

메시지가 표시되면 다음을 수행합니다.

  1. 키 저장소의 비밀번호를 입력하십시오.
  2. 이름, 조직, 위치 및 기타 필수 세부 정보를 입력합니다.
  3. 정보를 확인합니다.

이전 예의 매개 변수를 사용하는 keytool 명령 스크린샷.

인증서 생성

다음 명령을 실행하여 인증서를 생성합니다.

keytool -exportcert -alias powerappswrap -keystore powerappswrap.pfx | openssl sha1 -binary | openssl base64

메시지가 표시되면 이전에 만든 키 저장소 암호를 입력합니다.

이전에 보여준 예의 매개 변수를 사용하는 keytool 명령 스크린샷.

설명된 매개 변수:

매개 변수 Description
genkey 키를 생성합니다.
별칭 키 저장소 항목의 별칭입니다.
keyalg 키 알고리즘 이름입니다.
keystore 키 저장소의 이름입니다.
keysize 각 키의 크기입니다.
validity 키의 유효 기간(일)입니다.

APK 패키지 수동 서명(KV 서명용이 아님)

래핑 중에 자동 로그인을 사용하지 않거나 Play 스토어용 AAB 파일을 업로드하려는 경우 다음 단계를 따르세요. 이 프로세스가 반복되지 않도록 하려면 가능한 경우 자동 로그인을 사용합니다.

Apksigner 도구를 찾습니다.

  1. Android Studio을(를) 여십시오.
  2. 도구>SDK 관리자>Android SDK 위치로 이동하여 SDK 경로를 찾습니다.
  3. SDK 디렉터리에서 다음 경로로 이동합니다.
    • build-tools>[버전 번호]>apksigner.bat(Windows) 또는 apksigner(Mac/Linux) 찾기
    • 또는: build-tools>[버전 번호]>lib>apksigner.jar 찾기

apksigner 위치 정보가 포함된 스크린샷.

APK 파일 서명

다음 명령어를 실행하여 APK에 서명합니다.

apksigner.bat sign --ks PATH_TO_KEYSTORE --ks-key-alias KEY_ALIAS PATH_TO_APK

설명된 매개 변수:

매개 변수 Description
ks 키 저장소 파일의 경로(예: C:\Users\name\Desktop\powerappswrap.jks)
ks-key-alias 키를 생성할 때 사용한 별칭(예: powerappswrap)
PATH_TO_APK APK 파일의 전체 경로(예: C:\Users\name\Downloads\MyApp.apk)

메시지가 표시되면 키 저장소 암호를 입력합니다.

예제:

apksigner.bat sign --ks C:\Users\name\Desktop\powerappswrap.jks --ks-key-alias powerappswrap C:\Users\name\Desktop\MyApp.apk

서명 확인

서명 후 다음을 사용하여 APK 서명을 확인합니다.

apksigner.bat verify --verbose PATH_TO_APK

인증에 성공하면 APK가 올바르게 서명되고 배포할 준비가 되었음을 확인할 수 있습니다.

자세한 내용은 Android Studio 명령줄 도구: apksigner를 참조하세요.

앱 배포

앱에 서명한 후 다음과 같은 여러 가지 방법을 사용하여 앱을 배포할 수 있습니다.

배포 옵션

참조 항목