Não consigo encontrar a ferramenta do Android


265

Estou tentando seguir o tutorial de mapeamento do Android e cheguei a essa parte em que precisava obter uma chave de API .

Encontrei o meu, debug.keystoremas não parece haver um keytoolaplicativo no diretório:

C:\Documents and Settings\tward\\.android>ls
adb_usb.ini      avd       debug.keystore  repositories.cfg androidtool.cfg  ddms.cfg  default.keyset

Também não há keytoolneste diretório:

C:\Android\android-sdk-windows\tools>ls
AdbWinApi.dll     apkbuilder.bat       etc1tool.exe         mksdcard.exe
AdbWinUsbApi.dll  ddms.bat             fastboot.exe         source.properties
Jet               dmtracedump.exe      hierarchyviewer.bat  sqlite3.exe
NOTICE.txt        draw9patch.bat       hprof-conv.exe       traceview.bat
adb.exe           emulator.exe         layoutopt.bat        zipalign.exe
android.bat       emulator_NOTICE.txt  lib

Estou usando o Eclipse como meu editor e acredito que baixei todo o SDK mais recente.

O que estou fazendo de errado?


12
Ótimo. Postei minha segunda pergunta de sempre e recebo um "Tumbleweed" para meu primeiro distintivo !!! Por favor, me zombar suavemente :-)
Tim

incrível, você encontrou uma maneira de obter SHA1 lançamento em janelas
Pankaj Nimgade

Respostas:


441

keytoolvem com o Java SDK. Você deve encontrá-lo no diretório que contém javacetc.


153
Entendi: C: \ Arquivos de programas \ Java \ jdk1.6.0_14 \ bin Obrigado
Tim

5
pode até encontrá-lo no JRE ... Obrigado
Nick.T

4
Um truque útil é salvar a saída em um arquivo, para que você possa pegar a chave. Basta adicionar isso no final:> somefilename.txt
Attaque

3
Em C: \ Arquivos de programas \ Java \ jdk1.7.0_79 \ bin
Jean-François

18
A minha era no C:\Program Files\Android\Android Studio\jre\bin(Utilização do Studio, não Eclipse)
Tim Krins

99

Ok, esse post é de seis meses atrás, mas pensei em adicionar algumas informações aqui para pessoas que estão confusas sobre todo o negócio de chave de API / impressão digital MD5. Demorei um pouco para descobrir, então suponho que outros também tenham tido problemas com isso (a menos que eu seja tão chato).

Essas instruções são para o Windows XP, mas imagino que seja semelhante para outras versões do Windows. Parece que os usuários de Mac e Linux têm mais facilidade com isso, para que eu não os resolva.

Portanto, para usar visualizações de mapa em seus aplicativos Android, o Google deseja fazer check-in com eles para que você possa assinar um contrato de Termos de Serviço das APIs do Android Maps APIs. Acho que eles não querem que você faça aplicativos GPS passo a passo para competir com os deles ou algo assim. Eu realmente não li. Opa

Então vá para http://code.google.com/android/maps-api-signup.html e confira. Eles querem que você marque a caixa "Li e concordo com os termos e condições" e insira a impressão digital MD5 do seu certificado. O que é isso, você pode dizer. Não sei, mas faça o que digo e seu aplicativo para Android não será prejudicado.

Vá para Iniciar> Executar e digite cmd para abrir um prompt de comando. Você precisa navegar para o diretório com o arquivo keytool.exe, que pode estar em um local ligeiramente diferente, dependendo da versão do JDK que você instalou. O meu está, C:\Program Files\Java\jdk1.6.0_21\binmas tente navegar até a pasta Java e veja qual versão você possui e altere o caminho de acordo.

Após navegar para C: \ Arquivos de Programas \ Java \ <"sua versão do JDK aqui"> \ bin no prompt de comando, digite

keytool -list -keystore "C:/Documents and Settings/<"your user name here">/.android/debug.keystore"

com as aspas. Claro que <"seu nome de usuário aqui"> seria seu próprio nome de usuário do Windows.

(Se você estiver com problemas para encontrar esse caminho e estiver usando o Eclipse, poderá verificar Janela> preferências> Android> Compilar e verificar o "Armazenamento de chaves de Depuração Padrão")

Pressione enter e ele solicitará uma senha. Basta pressionar enter. E pronto, na parte inferior está a sua impressão digital MD5. Digite sua impressão digital na caixa de texto na página de inscrição da API do Android Maps e pressione Gerar chave da API.

E a sua chave está em toda a sua glória, com um prático layout de amostra em XML, com a chave inserida para você copiar e colar.


Você me salvou uma dor de cabeça ou dois
zabawaba99

Não deveriam ser barras invertidas, em vez de barras, no Windows?
Ryan R

FYI, se você usar jdk1.7 adicionar o modificador-v
Ryan R

Mais pessoas devem explicar como você!
K - A toxicidade no SO está crescendo.

@malfunction, há uma maneira de obter SHA1 para criação de versão em janelas
Pankaj Nimgade

17

Ok, eu fiz isso no sistema Windows 7 de 32 bits.

etapa 1 : vá para - C: \ Arquivos de programas \ Java \ jdk1.6.0_26 \ bin - e execute o jarsigner.exe primeiro (clique duas vezes)

step2 : localize debug.keystore, no meu caso, era - C: \ Users \ MyPcName \ .android

etapa 3 : abra o prompt de comando e vá para dir - C: \ Arquivos de Programas \ Java \ jdk1.6.0_26 \ bin e dê o seguinte comando: keytool -list -keystore "C: \ Usuários \ MeuPcName \ .android \ debug.keystore"

step4 : solicitará a senha do Keystore agora. (o que estou descobrindo ...: -?)

update: OK, no meu caso, a senha era 'android'. - (Estou usando o Eclipse para android, então encontrei aqui) Siga as etapas no eclipse : Windows> preferências> android> build> ..
(Veja no campo `padrão Debug Keystore ' .)



Comando para alterar a senha do keystore (veja aqui): Senhas de alteração do keystore




10

A resposta em quatro etapas acima funcionou para mim, mas retorna a chave SH1 ... mas o Google pede a chave MD5 para gerar sua chave de API.

Basta adicionar um '-v' no comando na etapa 3. -como assim:

Resposta em quatro etapas atualizada

Ok, eu fiz isso no sistema Windows 7 de 32 bits.

etapa 1 : vá para - C: \ Arquivos de programas \ Java \ jdk1.7.0 \ bin - e execute o jarsigner.exe primeiro (clique duas vezes)

step2 : localize debug.keystore (no Eclipse: Windows / Preferences / Android / build ..), no meu caso, era - C: \ Users \ MyPcName.android

etapa 3 : abra o prompt de comando e vá para dir - C: \ Arquivos de Programas \ Java \ jdk1.7.0 \ bin e dê o seguinte comando: keytool -v -list -keystore "C: \ Users \ MyPcName.android \ debug.keystore"

step4 : solicitará a senha do Keystore agora. O padrão é 'android'


6

Eu nunca instalei o Java, mas quando você instala o Android Studio, ele tem sua própria versão no diretório Android. Aqui é onde está o meu. Seu caminho pode ser semelhante. Depois disso, você pode colocar o keytool em seu caminho ou simplesmente executá-lo nesse diretório.

C:\Program Files\Android\Android Studio\jre\bin

2

Isso parecia muito mais difícil de encontrar do que precisa para o OSX. Muitas postagens conflitantes

Para o MAC OSX Mavericks Java JDK 7, siga estas etapas para localizar keytool:

Primeiro, certifique-se de instalar Java JDK:

http://docs.oracle.com/javase/7/docs/webnotes/install/mac/mac-jdk.html

Em seguida, digite isso no prompt de comando:

/usr/libexec/java_home -v 1.7

cuspirá algo como:

/Library/Java/JavaVirtualMachines/jdk1.7.0_51.jdk/Contents/Home

keytoolestá localizado no mesmo diretório que javac. ou seja:

/Library/Java/JavaVirtualMachines/jdk1.7.0_51.jdk/Contents/Home/bin

Do bindiretório você pode usar o keytool.


2

Se você estiver usando o Android Studio para Windows para criar um keystore de versão e o .apk assinado, siga estas etapas:

1) Criar> Gerar APK assinado

2) Escolha "Criar novo ...", escolha o caminho para o keystore e insira todos os dados necessários

3) Após a criação do seu keystore (your_keystore_name.jks), você o utilizará para criar seu primeiro apk assinado no destino de sua escolha

Não vejo a necessidade de usar a ferramenta de comando se você tiver um IDE como o Android Studio.


talvez para usar para descobrir a impressão digital SHA1?
Iyas

0

De fato, a exportação do eclipse chamará

java -jar android-sdk-windows\tools\lib\sdklib.jar com.android.sdklib.build.ApkBuilderMain

e chame com.android.sdklib.internal.build.SignedJarBuilder.


0

Uma coisa que não foi mencionada aqui (mas me impediu de executar o keytool) foi que você precisava executar o prompt de comando como administrador.

Só queria compartilhá-lo ...


Provavelmente deve ser um comentário e não uma resposta.
Ian R. O'Brien.

1
Concordo que deveria ser um comentário, embora isso seja azar, você não tem representante suficiente para comentar!
Joel Balmer

0

Não há necessidade de usar a linha de comando.

Se você ARQUIVO-> "Exportar aplicativo Android" no ADK, ele permitirá que você crie uma chave e produza seu arquivo .apk.

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.