Quais são as etapas para criar um keystore para android?
Preciso usar o google maps no meu aplicativo e não sei quais etapas perdi. Forneça-me as etapas detalhadas específicas (não as compreendi nos guias).
Quais são as etapas para criar um keystore para android?
Preciso usar o google maps no meu aplicativo e não sei quais etapas perdi. Forneça-me as etapas detalhadas específicas (não as compreendi nos guias).
Respostas:
Para responder à pergunta no título, crie um keystore com o utilitário Java Keytool que vem com qualquer distribuição JDK padrão e pode ser localizado em %JAVA_HOME%\bin
. No Windows, isso normalmente seria C:\Program Files\Java\jre7\bin
.
Portanto, no Windows, abra uma janela de comando e alterne para esse diretório e insira um comando como este
keytool -genkey -v -keystore my-release-key.keystore -alias alias_name -keyalg RSA -keysize 2048 -validity 10000
A Keytool solicita que você forneça senhas para o keystore, forneça os campos Nome Distinto e, em seguida, a senha da sua chave. Em seguida, gera o keystore como um arquivo chamado my-release-key.keystore no diretório em que você está. O keystore e a chave são protegidos pelas senhas que você digitou. O keystore contém uma única chave, válida por 10.000 dias. O alias é um nome que você + usará mais tarde, para se referir a este keystore ao assinar seu aplicativo.
Para obter mais informações sobre o Keytool, consulte a documentação em: http://docs.oracle.com/javase/6/docs/technotes/tools/windows/keytool.html
e para obter mais informações sobre como assinar aplicativos Android, acesse: http://developer.android.com/tools/publishing/app-signing.html
keytool -genkey -v -keystore debug.keystore -storepass android -alias android -keypass android -keyalg RSA -keysize 2048 -validity 10000
. Em seguida, para gerar o SHA-1 que você precisa colocar em Firebase fazer:keytool -list -v -keystore debug.keystore -alias android -storepass android -keypass android
Para assinar seu aplicativo no modo de versão no Android Studio, siga estas etapas:
1- Na barra de menus, clique em Criar> Gerar APK assinado.
2-Na janela Assistente para Gerar APK assinado, clique em Criar novo para criar um novo keystore. Se você já possui um keystore, vá para a etapa 4.
3- Na janela New Key Store, forneça as informações necessárias, conforme mostrado na figura Sua chave deve ser válida por pelo menos 25 anos, para que você possa assinar atualizações de aplicativos com a mesma chave durante toda a vida útil do seu aplicativo.
4- Na janela Assistente para Gerar APK Assinado, selecione um keystore, uma chave privada e insira as senhas para ambos. Depois clique em Next.
5- Na próxima janela, selecione um destino para o APK assinado e clique em Concluir.
http://developer.android.com/tools/publishing/app-signing.html
Eu estava louco procurando como gerar um .keystore usando no shell um comando de linha única , para poder executá-lo em outro aplicativo. Este é o caminho:
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 é um identificador exclusivo para o aplicativo no .keystore
alias Identificador do aplicativo como uma entidade única dentro do .keystore (ele pode ter muitos)
.ks
)Funcionou muito bem para mim, não pede mais nada no console, apenas cria o arquivo. Para obter mais informações, consulte keytool - Ferramenta de gerenciamento de chaves e certificados .
/path/file.keystore
e apontar isso com o parâmetro storepass.
jks
é a extensão oficial do keystore para java em geral, mas keystore
é a recomendada para uso em aplicativos Android .
Crie o arquivo keystore a partir da linha de comandos:
Abrir linha de comando:
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]
Digite> Ele solicitará a senha> digite a senha (será invisível)
Enter keystore password:
Re-enter new password:
Digite> Ele perguntará seus detalhes.
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
Digite> Digite Y
Is CN=AB, OU=Self, O=Self, L=INDORE, ST=MP, C=91 correct?
[no]: Y
Digite> Digite a senha novamente.
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:
[Armazenando C: /index.keystore]
Exporte o seu pacote Android para .apk com o arquivo keystore criado
Clique com o botão direito do mouse no pacote que você deseja exportar e selecione exportar
Selecione Exportar aplicativo Android> Avançar
Próximo
Selecione Usar keystore existente> Procurar arquivo .keystore> digite a senha> Avançar
Crie keystore [.keystore/.jks]
no estúdio ...
Clique em Compilar (ALT + B) > Gerar APK assinado ...
Clique em Criar novo. (ALT + C)
Percorrer o caminho do armazenamento de chaves (SHIFT + ENTER)> selecione Caminho> Digite o nome> OK
Preencha os detalhes do seu .jks/keystore
arquivo
Próximo
Seu arquivo
Digite a senha mestra do Studio (você pode redefinir se não souber) > OK
Selecione * Pasta de destino *> Tipo de compilação
release : for publish on app store
debug : for debugging your application
Clique em Concluir
Feito !!!
Este tutorial:
http://techdroid.kbeanie.com/2010/02/sign-your-android-applications-for.html
foi muito útil para mim na primeira vez em que criei um keystore. É simples, mas as instruções no developer.android.com são um pouco breves.
A parte que eu não tinha certeza era onde salvar e que nome dar ao arquivo keystore .
Parece que não importa onde você o coloca, apenas mantenha-o seguro e mantenha vários backups. Eu apenas coloquei no meu diretório de aplicativos
Nomeie o arquivo "something.keystore" onde algo pode ser o que você quiser. Eu usei app_name.keystore , em que app_name era o nome do meu aplicativo.
A próxima parte era como nomear o apelido. Mais uma vez, não parece importar, então novamente usei o app_name novamente. Mantenha as senhas iguais às usadas anteriormente. Preencha o restante dos campos e pronto.
Eu segui este guia para criar o keystore de depuração.
O comando é:
keytool -genkeypair -alias androiddebugkey -keypass android -keystore debug.keystore -storepass android -dname "CN=Android Debug,O=Android,C=US" -validity 9999
A primeira coisa a saber é se você está no modo Debug ou Release. No site do desenvolvedor "Existem dois modos de compilação: modo de depuração e modo de liberação. Você usa o modo de depuração ao desenvolver e testar seu aplicativo. Você usa o modo de liberação quando deseja criar uma versão de lançamento do seu aplicativo que possa ser distribuída diretamente para usuários ou publicar em um mercado de aplicativos como o Google Play ".
Se você estiver no modo de depuração, faça o seguinte ...
A. Abra o terminal e digite:
keytool -exportcert -alias androiddebugkey -keystore path_to_debug_or_production_keystore -list -v
Nota: Para o Eclipse, o keystore de depuração geralmente está localizado em ~ / .android / debug.keystore ...
B. quando solicitado uma senha, basta digitar "android" ...
C. Se você estiver no modo Release, siga as instruções em ...
http://developer.android.com/tools/publishing/app-signing.html <- este link explica praticamente tudo o que você precisa saber.
Você pode criar seu keystore exportando um APK assinado. Quando você tentar exportar / criar um APK assinado, ele solicitará um keystore.
Você pode escolher seu keystore existente ou criar facilmente um novo, clicando em criar novo keystore
Aqui, um link muito útil e bem explicado de como criar seu keystore e gerar um APK assinado
Este link explicou como fazer isso com o Android Studio, mas se bem me lembro, é bem parecido no Eclipse
CUIDADO
Depois de gerar seu keystore, mantenha-o em algum lugar seguro, pois será necessário gerar novamente um novo APK assinado.
Eu gostaria de sugerir uma maneira automática apenas com gradle
** Defina também pelo menos um parâmetro adicional para keystore no último comando, por exemplo, país '-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
}
Isso irá gerar keystore na sincronização do projeto e criar
> Task :app:generateKeystore UP-TO-DATE
> Task :app:preBuild UP-TO-DATE
Se você não quiser ou não puder usar o Android Studio, poderá usar a ferramenta NPM create-android-keystore:
$ create-android-keystore quick
O que resulta em um keystore recém-gerado no diretório atual.
Mais informações: https://www.npmjs.com/package/create-android-keystore