Android Cordova 활용한 KeyStore 생성
페이지 정보
본문
구글 플레이에 앱을 등록하기 위해서 키스토어 생성 및 release 앱을 생성하는 방법입니다
2021년 10월 최근부터 안드로이드앱 스토어 빌드파일은 apk가 아닌 aab파일을 만들어 배포진행
안드로이드 구글플레이 출시진행시 최근 apk파일이 아닌 파일 압축률이 좋은 aab파일로 업로드가 되도록 정책변경되었습니다
apk 가 aab 로 변경되면서 파일용량이 많이 줄어들었습니다
1. 앱 버전
config.xml 에서 수정
<?xml version='1.0' encoding='utf-8'?>
<widget id="com.test.app" version="1.0.0"
2. 키스토어 생성
keytool -genkey -v -keystore [키스토어 파일명] -alias [얼리어스명] -keyalg [암호화방식] -keysize [key크기] -validity [유효기간]
위 명령 실행중 입력한 비밀번호와 얼리어스명은 꼭 메모해놓고 분실하지 않아야 합니다
생성된 키스토어 파일도 분실하면 업데이트가 불가능해지니 반드시 백업을 잘 해야합니다
위 명령어 맨뒤의 10000 이란 숫자는 키스트어의 만료일수를 뜻하므로, 그냥 10000 사용합니다
> keytool -genkey -v -keystore testapp.keystore -alias testapp -keyalg RSA -keysize 2048 -validity 10000
Enter keystore password:
Re-enter new password:
What is your first and last name?
[Unknown]: Changyong Jung
What is the name of your organizational unit?
[Unknown]: Happyjung dot com
What is the name of your organization?
[Unknown]: Happyjung dot com
What is the name of your City or Locality?
[Unknown]: Seoul
What is the name of your State or Province?
[Unknown]: Korea
What is the two-letter country code for this unit?
[Unknown]: kr
Is CN=Changyong Jung, OU=Happyjung dot com, O=Happyjung dot com, L=Seoul, ST=Korea, C=kr correct?
[no]: y
Generating 2,048 bit RSA key pair and self-signed certificate (SHA256withRSA) with a validity of 10,000 days
for: CN=Changyong Jung, OU=Happyjung dot com, O=Happyjung dot com, L=Seoul, ST=Korea, C=kr
[Storing testapp.keystore]
3. Sign your Android app
코르도바에는 안드로이드 앱에 빠르게 서명할 수 있는 방법이 내장되어 있습니다. 이것은 앱에 서명하는 데 필요한 모든 정보를 전달하는 설정 파일인 build.json으로 수행됩니다
프로젝트 폴더에 build.json 파일을 만들어서 저장합니다
{
"android": {
"debug": {
"keystore": "../testapp.keystore",
"storePassword": "123456",
"alias": "testapp",
"password" : "123456",
"keystoreType": ""
},
"release": {
"keystore": "./testapp.keystore",
"storePassword": "123456",
"alias": "testapp",
"password": "123456",
"keystoreType": "",
"packageType": "bundle"
}
}
}
4. 빌드 만들기
release용 (스토어배포용) APK 빌드
> cordova build android --release
2022.09 까지 배포용 release 생성에 사용
2022.10 이후 배포용 release 생성은 아래 방식으로 변경
아래처럼 build.json파일경로에서 실행하면 aab파일이 만들어짐.
("packageType":"bundle" 로 설정시 aab가 만들어지며, apk인경우엔 apk파일이 만들어짐. 기본이 apk임)
> cordova build android --release --buildConfig=build.json
디버그 참고
> cordova build android --debug --buildConfig=build.json
빌드가 안될땐
> cordova clean
얼리어스명 확인방법
keytool -list -keystore [키스토어파일명]
5. 생성된 aab 파일을 구글 플레이 스토어에 등록
work_tttt
├ ...
├ platfroms
│ ├ android
│ │ ├ app
│ │ │ ├ build
│ │ │ │ ├ ...
│ │ │ │ ├ outputs
│ │ │ │ │ ├ apk
│ │ │ │ │ │ ├ debug
│ │ │ │ │ │ │ ├ app-debug.apk
│ │ │ │ │ │ │ └ ...
│ │ │ │ │ │ └ release
│ │ │ │ │ │ ├ app-release-unsigned.apk <== 2022.09 까지 생성/활용
│ │ │ │ │ │ └ ...
│ │ │ │ │ ├ bundle
│ │ │ │ │ │ └ release
│ │ │ │ │ │ └ app-release.aab <== 2022.10 부터 생성/활용
│ │ │ │ │ └ ...
│ │ │ │ └ ...
│ │ │ └ ...
│ │ └ ...
│ └ ios
│ └ ...
├ ...
├ build.json <== 파일생성
├ config.xml <== 앱버전 설정
└ ...
참고자료
https://flystone.tistory.com/208
https://blog.instabug.com/how-to-release-cordova-app-ios-android/
2021년 10월 최근부터 안드로이드앱 스토어 빌드파일은 apk가 아닌 aab파일을 만들어 배포진행
안드로이드 구글플레이 출시진행시 최근 apk파일이 아닌 파일 압축률이 좋은 aab파일로 업로드가 되도록 정책변경되었습니다
apk 가 aab 로 변경되면서 파일용량이 많이 줄어들었습니다
1. 앱 버전
config.xml 에서 수정
<?xml version='1.0' encoding='utf-8'?>
<widget id="com.test.app" version="1.0.0"
2. 키스토어 생성
keytool -genkey -v -keystore [키스토어 파일명] -alias [얼리어스명] -keyalg [암호화방식] -keysize [key크기] -validity [유효기간]
위 명령 실행중 입력한 비밀번호와 얼리어스명은 꼭 메모해놓고 분실하지 않아야 합니다
생성된 키스토어 파일도 분실하면 업데이트가 불가능해지니 반드시 백업을 잘 해야합니다
위 명령어 맨뒤의 10000 이란 숫자는 키스트어의 만료일수를 뜻하므로, 그냥 10000 사용합니다
> keytool -genkey -v -keystore testapp.keystore -alias testapp -keyalg RSA -keysize 2048 -validity 10000
Enter keystore password:
Re-enter new password:
What is your first and last name?
[Unknown]: Changyong Jung
What is the name of your organizational unit?
[Unknown]: Happyjung dot com
What is the name of your organization?
[Unknown]: Happyjung dot com
What is the name of your City or Locality?
[Unknown]: Seoul
What is the name of your State or Province?
[Unknown]: Korea
What is the two-letter country code for this unit?
[Unknown]: kr
Is CN=Changyong Jung, OU=Happyjung dot com, O=Happyjung dot com, L=Seoul, ST=Korea, C=kr correct?
[no]: y
Generating 2,048 bit RSA key pair and self-signed certificate (SHA256withRSA) with a validity of 10,000 days
for: CN=Changyong Jung, OU=Happyjung dot com, O=Happyjung dot com, L=Seoul, ST=Korea, C=kr
[Storing testapp.keystore]
3. Sign your Android app
코르도바에는 안드로이드 앱에 빠르게 서명할 수 있는 방법이 내장되어 있습니다. 이것은 앱에 서명하는 데 필요한 모든 정보를 전달하는 설정 파일인 build.json으로 수행됩니다
프로젝트 폴더에 build.json 파일을 만들어서 저장합니다
{
"android": {
"debug": {
"keystore": "../testapp.keystore",
"storePassword": "123456",
"alias": "testapp",
"password" : "123456",
"keystoreType": ""
},
"release": {
"keystore": "./testapp.keystore",
"storePassword": "123456",
"alias": "testapp",
"password": "123456",
"keystoreType": "",
"packageType": "bundle"
}
}
}
4. 빌드 만들기
release용 (스토어배포용) APK 빌드
> cordova build android --release
2022.09 까지 배포용 release 생성에 사용
2022.10 이후 배포용 release 생성은 아래 방식으로 변경
아래처럼 build.json파일경로에서 실행하면 aab파일이 만들어짐.
("packageType":"bundle" 로 설정시 aab가 만들어지며, apk인경우엔 apk파일이 만들어짐. 기본이 apk임)
> cordova build android --release --buildConfig=build.json
디버그 참고
> cordova build android --debug --buildConfig=build.json
빌드가 안될땐
> cordova clean
얼리어스명 확인방법
keytool -list -keystore [키스토어파일명]
5. 생성된 aab 파일을 구글 플레이 스토어에 등록
work_tttt
├ ...
├ platfroms
│ ├ android
│ │ ├ app
│ │ │ ├ build
│ │ │ │ ├ ...
│ │ │ │ ├ outputs
│ │ │ │ │ ├ apk
│ │ │ │ │ │ ├ debug
│ │ │ │ │ │ │ ├ app-debug.apk
│ │ │ │ │ │ │ └ ...
│ │ │ │ │ │ └ release
│ │ │ │ │ │ ├ app-release-unsigned.apk <== 2022.09 까지 생성/활용
│ │ │ │ │ │ └ ...
│ │ │ │ │ ├ bundle
│ │ │ │ │ │ └ release
│ │ │ │ │ │ └ app-release.aab <== 2022.10 부터 생성/활용
│ │ │ │ │ └ ...
│ │ │ │ └ ...
│ │ │ └ ...
│ │ └ ...
│ └ ios
│ └ ...
├ ...
├ build.json <== 파일생성
├ config.xml <== 앱버전 설정
└ ...
참고자료
https://flystone.tistory.com/208
https://blog.instabug.com/how-to-release-cordova-app-ios-android/
댓글목록
등록된 댓글이 없습니다.