키 저장소를 만들려면 어떻게 해야 합니까?
안드로이드용 키 저장소를 만드는 단계는 무엇입니까?
앱에서 구글 지도를 사용해야 하는데 어떤 단계를 놓쳤는지 모르겠습니다.구체적인 세부 단계를 알려주세요(가이드에서 이해하지 못했습니다).
키. 이 유틸리티는 JDK 목제답 공음있 JDK ▁to▁at▁be▁key▁located다▁you니▁title▁with,▁a만듭▁the▁that▁the▁in▁question▁create▁j제를목store▁answer유▁can▁standard▁the▁and소저ution장틸▁java키▁key▁java▁utility는▁keytooldk▁comesdk사▁anytool용의▁with하여리문있티를질%JAVA_HOME%\bin
에서는 일반적으로 Windows(윈도우)입니다.C:\Program Files\Java\jre7\bin
.
Windows에서 명령 창을 열고 해당 디렉터리로 전환합니다.Linux에서 OS 유형은 터미널에서도 동일하게 수행합니다.그런 다음 실행:
keytool -genkey -v -keystore my-release-key.keystore -alias alias_name -keyalg RSA -keysize 2048 -validity 10000
키 도구는 키 저장소에 대한 암호를 입력하고 고유 이름 필드를 입력한 다음 키에 대한 암호를 입력하라는 메시지를 표시합니다. 키 로 생성합니다.my-release-key.keystore
당신이 있는 디렉토리에.키 저장소 및 키는 입력한 암호로 보호됩니다.키 저장소에는 10000일 동안 유효한 단일 키가 포함되어 있습니다. 그alias_name
는 나중에 응용 프로그램에 서명할 때 이 키 저장소를 나타내는 데 사용할 이름입니다.
Keytool에 대한 자세한 내용은 http://docs.oracle.com/javase/6/docs/technotes/tools/windows/keytool.html 의 설명서를 참조하십시오.
Android 앱 서명에 대한 자세한 내용은 여기를 참조하십시오. http://developer.android.com/tools/publishing/app-signing.html
Android Studio에서 앱 서명하기
Android Studio에서 앱을 릴리스 모드로 서명하려면 다음 단계를 수행합니다.
1- 메뉴바에서 Build > Generate Signed APK 를 클릭합니다.
2-Generate Signed APK Wizard(서명된 APK 생성 마법사) 창에서 Create new(새로 생성)를 클릭하여 새 키 저장소를 만듭니다.키 저장소가 이미 있는 경우 4단계로 이동합니다.
3 - 새 키 저장소 창에서 그림과 같이 필요한 정보를 입력합니다. 키는 최소 25년 이상 유효해야 앱의 수명을 통해 동일한 키로 앱 업데이트에 서명할 수 있습니다.
4 - 서명된 APK 생성 마법사 창에서 키 저장소와 개인 키를 선택하고 둘 다에 대한 암호를 입력합니다.그런 다음 다음을 클릭합니다.
5- 다음 창에서 서명된 APK의 대상을 선택하고 마침을 클릭합니다.
참조
http://developer.android.com/tools/publishing/app-signing.html
셸에서 한 줄 명령을 사용하여 .keystore를 생성하여 다른 응용 프로그램에서 실행할 수 있는 방법을 찾고 있었습니다.방법은 다음과 같습니다.
echo y | keytool -genkeypair -dname "cn=Mark Jones, ou=JavaSoft, o=Sun, c=US" -alias business -keypass kpi135 -keystore /working/android.keystore -storepass ab987c -validity 20000
dname은 .keystore의 응용 프로그램에 대한 고유 식별자입니다.
- cn .keystore를 생성하는 사용자 또는 조직의 전체 이름
- 프로젝트를 생성하는 Ou Organizational Unit, 프로젝트를 생성하는 Organization의 하위 섹션입니다.예: android.google.com
- o 전체 프로젝트의 조직 소유자.당신보다 더 높은 범위입니다.예: google.com
- c 국가 단축 코드.예: 미국은 "US"입니다.
alias .keystore 내의 단일 엔터티인 앱의 식별자(여러 개 포함될 수 있음
- keypass 해당 별칭을 보호하기 위한 암호입니다.
- keystore .keystore 파일이 생성될 경로(표준 확장자는 실제로
.ks
) - storepass 전체 .keystore 콘텐츠를 보호하기 위한 암호입니다.
- 유효성 이 .keystore에서 앱이 유효한 일 수
저에게는 아주 잘 작동했습니다. 콘솔에서 다른 것을 요구하지 않고 파일을 만듭니다.자세한 내용은 키 도구 - 키 및 인증서 관리 도구를 참조하십시오.
명령줄에서 키 저장소 파일 생성:
명령줄 열기:
Microsoft Windows [Version 6.1.7601] Copyright (c) 2009 Microsoft Corporation. All rights reserved // (if you want to store keystore file at C:/ open command line with RUN AS ADMINISTRATOR) C:\Windows\system32> keytool -genkey -v -keystore [your keystore file path]{C:/index.keystore} -alias [your_alias_name]{index} -keyalg RSA -keysize 2048 -validity 10000[in days]
입력 > 비밀번호 입력 > 비밀번호 입력 (보이지 않음)
Enter keystore password: Re-enter new password:
> 를 입력하면 자세한 내용을 알 수 있습니다.
What is your first and last name? [Unknown]: {AB} // [Your Name / Name of Signer] What is the name of your organizational unit? [Unknown]: {Self} // [Your Unit Name] What is the name of your organization? [Unknown]: {Self} // [Your Organization Name] What is the name of your City or Locality? [Unknown]: {INDORE} // [Your City Name] What is the name of your State or Province? [Unknown]: {MP} //[Your State] What is the two-letter country code for this unit? [Unknown]: 91
Enter > Y 입력
Is CN=AB, OU=Self, O=Self, L=INDORE, ST=MP, C=91 correct? [no]: Y
> 비밀번호를 다시 입력합니다.
Generating 2,048 bit RSA key pair and self-signed certificate (SHA256withRSA) with a validity of 10,000 days for: CN=AB, OU=Self, O=Self, L=INDORE, ST=MP, C=91 Enter key password for <index> (RETURN if same as keystore password): Re-enter new password:
[ C:/index.keystore 저장 ]
- 그리고 당신은 끝났습니다!!!
이클립스에서 내보내기:
생성한 키 저장소 파일을 사용하여 Android 패키지를 .apk로 내보내기
오른쪽 단추로 합니다.
Android 응용 프로그램 내보내기 > 다음을 선택
다음 분.
기존 키스토어 사용 > .keystore 파일 찾아보기 > 비밀번호 입력 > 다음
Alias > 비밀번호 입력 > Next 선택
APK 대상 찾아보기 > 마침
Android Studio의 경우:
[.keystore/.jks]
스튜디오에서...
빌드(ALT+B) > 서명된 APK 생성...을 클릭합니다.
[새로 만들기]를 누릅니다.(ALT+C)
키 저장소 경로 찾아보기(SHIFT+ENTER) > 경로 선택 > 이름 입력 > 확인
에대세정채움를에 대한 합니다.
.jks/keystore
파일다음 분.
의 파일
Studio Master Password 입력(모르면 RESET 가능) > OK
*대상 폴더 * > 빌드 유형 선택
release : for publish on app store debug : for debugging your application
마침을 클릭]
됐습니다!!!
이 자습서:
"신청서에 서명해 주십시오."
보관 위치: https://web.archive.org/web/20181002011446/http ://techdroid.kbeanie.com/2010/02/sign-your-android-applications-for.html
처음 키 저장소를 만들어야 했을 때 큰 도움이 되었습니다.이것은 간단하지만 developer.android.com 의 지침은 너무 짧습니다.
키 저장소 파일을 저장할 위치와 어떤 이름으로 지정해야 할지 확신할 수 없었습니다.
어디에 두어도 상관이 없는 것 같습니다. 안전하게 보관하고 여러 개의 백업을 보관하십시오.방금 앱 디렉터리에 넣었습니다.
파일 이름을 "something"으로 지정합니다.원하는 것이 무엇이든 될 수 있는 "keystore".app_name을 사용했습니다.keystore. 여기서 app_name은 내 앱의 이름입니다.
다음 부분은 가명을 무엇으로 지을지에 대한 것이었습니다.다시 한번 문제가 되지 않는 것 같아서 다시 app_name을 사용했습니다.암호는 이전에 사용한 것과 동일하게 유지합니다.나머지 필드를 입력하면 완료됩니다.
이 명령을 사용하여 디버그를 만듭니다.키스토어
keytool -genkey -v -keystore ~/.android/debug.keystore -alias androiddebugkey -storepass android -keypass android -keyalg RSA -keysize 2048 -validity 10000 -dname "CN=Android Debug,O=Android,C=US"
명령은 다음과 같습니다.
keytool -genkeypair -alias androiddebugkey -keypass android -keystore debug.keystore -storepass android -dname "CN=Android Debug,O=Android,C=US" -validity 9999
가장 먼저 알아야 할 것은 디버그 모드인지 릴리스 모드인지 여부입니다.개발자 사이트에서 "디버깅 모드와 릴리스 모드의 두 가지 빌드 모드가 있습니다.응용프로그램을 개발하고 테스트할 때 디버그 모드를 사용합니다.사용자에게 직접 배포하거나 Google Play와 같은 애플리케이션 마켓플레이스에 게시할 수 있는 애플리케이션의 릴리스 버전을 구축하려면 릴리스 모드를 사용합니다."
디버그 모드에 있는 경우 다음을 수행합니다.
A. 터미널 열기 및 유형:
keytool -exportcert -alias androiddebugkey -keystore path_to_debug_or_production_keystore -list -v
참고: Eclipse의 경우 디버그 키 저장소는 일반적으로 ~/.android/debug에 있습니다.키 저장소...
B. 암호를 입력하라는 메시지가 나타나면 "안드로이드"를 입력하십시오...
C. 릴리스 모드인 경우 다음 지침을 따릅니다.
http://developer.android.com/tools/publishing/app-signing.html <-- 이 링크는 당신이 알아야 할 모든 것을 설명합니다.
@EliuX 답변을 기반으로 앱 번들과 호환되는 최신 툴
echo y | keytool -genkey -keystore ./android.jks -dname "n=Mark Jones, ou=JavaSoft, o=Sun, c=US" -alias android -keypass android -storepass android -keyalg RSA -keysize 2048 -validity 2000
당신의 체격을 위하여.gradle.
signingConfigs {
debug {
storeFile file('android.jks')
keyAlias 'android'
keyPassword 'android'
storePassword 'android'
}
}
서명된 APK를 내보내 키 저장소를 만들 수 있습니다.서명된 APK를 내보내거나 작성하려고 하면 키 저장소를 묻는 메시지가 표시됩니다.
기존 키 저장소를 선택하거나 새 키 저장소 만들기를 클릭하여 쉽게 새 키 저장소를 만들 수 있습니다.
키 저장소를 만들고 서명된 APK를 생성하는 방법에 대한 매우 유용하고 잘 설명된 링크입니다.
이 링크는 Android Studio로 하는 방법을 설명했지만, 제가 기억하기로는 Eclipse에서 거의 유사합니다.
조심해.
키 저장소를 생성한 후에는 서명된 새 APK를 재생성하기 위해 키 저장소가 필요하므로 안전한 곳에 보관하십시오.
안드로이드 스튜디오에서 프로젝트를 내보내려면 어떻게 해야 합니까?
그라들만 있는 자동 방법을 제안하고 싶습니다.
또한 하나 이상의 변수를 합니다. 를 들어, country " " " " " " " " " " ( " " " " " " " " " " " " " " " " " 는 " " " 입니다.'-dname', 'c=RU'
**
apply plugin: 'com.android.application'
// define here sign properties
def sPassword = 'storePassword_here'
def kAlias = 'keyAlias_here'
def kPassword = 'keyPassword_here'
android {
...
signingConfigs {
release {
storeFile file("keystore/release.jks")
storePassword sPassword
keyAlias kAlias
keyPassword kPassword
}
}
buildTypes {
debug {
signingConfig signingConfigs.release
}
release {
shrinkResources true
minifyEnabled true
useProguard true
signingConfig signingConfigs.release
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
}
}
...
}
...
task generateKeystore() {
exec {
workingDir projectDir
commandLine 'mkdir', '-p', 'keystore'
}
exec {
workingDir projectDir
commandLine 'rm', '-f', 'keystore/release.jks'
}
exec {
workingDir projectDir
commandLine 'keytool', '-genkey', '-noprompt', '-keystore', 'keystore/release.jks',
'-alias', kAlias, '-storepass', sPassword, '-keypass', kPassword, '-dname', 'c=RU',
'-keyalg', 'RSA', '-keysize', '2048', '-validity', '10000'
}
}
project.afterEvaluate {
preBuild.dependsOn generateKeystore
}
프로젝트 동기화 및 빌드 시 키 저장소가 생성됩니다.
> Task :app:generateKeystore UP-TO-DATE
> Task :app:preBuild UP-TO-DATE
Android Studio를 사용하고 싶지 않거나 사용할 수 없는 경우, Android 키 저장소 NPM 만들기 도구를 사용할 수 있습니다.
$ create-android-keystore quick
따라서 현재 디렉터리에 새로 생성된 키 저장소가 생성됩니다.
더 많은 정보: https://www.npmjs.com/package/create-android-keystore
언급URL : https://stackoverflow.com/questions/3997748/how-can-i-create-a-keystore
'source' 카테고리의 다른 글
파이썬에서 1900년 이전 날짜에 대해 strftime 유사 함수를 사용할 수 있는 방법이 있습니까? (0) | 2023.06.19 |
---|---|
Git 저장소에 있는 달링 커밋과 방울은 무엇이며 그것들은 어디에서 왔습니까? (0) | 2023.06.19 |
2단계 인증을 사용하는 GitHub의 GitClone over https (0) | 2023.06.19 |
c 또는 c++로 매우 큰 단일 메모리 청크(> 4GB)를 할당할 수 있습니까? (0) | 2023.06.19 |
INSERT/UPDATE를 위해 Oracle SQL의 MERGE 문에 조건 추가 (0) | 2023.06.19 |