Estou lendo um guia de desenvolvimento de desenvolvedores do Facebook aqui
Ele diz que devo usar o keytool para exportar a assinatura do meu aplicativo, como:
keytool -exportcert -alias androiddebugkey -keystore ~/.android/debug.keystore | openssl sha1 -binary | openssl base64
Não sei como encontrar o keytool para executá-lo. Tentei abrir um prompt de comando do Windows e colar o comando acima, mas ele não funcionou.
/usr/local/java/bin# ./keytool
, se você estiver executando o Windowsfind the JDK install path and check bin folder
Respostas:
Eu encontrei uma solução sozinho como abaixo citação. Funciona bem.
fonte
Basta inseri-los no prompt de comando do Windows.
A senha base é
android
Você será apresentado com o
MD5
,SHA1
eSHA256
chaves; Escolha o que você precisa.fonte
keytool error: java.lang.Exception: Only one command is allowed: both -exportcert and -list were specified.
Para obter o código hash da chave do Android, siga estas etapas (para aplicativos do facebook)
cd C:\Program Files\Java\jdk1.6.0_26\bin
keytool -export -alias myAlias -keystore C:\Users\<your user name>\.android\myKeyStore | C:\openssl-0.9.8k_WIN32\bin\openssl sha1 -binary | C:\openssl-0.9.8k_WIN32\bin\openssl enc -a -e
Para obter o código de impressão digital do certificado (MD5), siga estas etapas
jarsigner.exe
arquivocd C:\Program Files\Java\jdk1.6.0_26\bin
keytool -list -keystore "C:/Documents and Settings/<your user name>/.android/debug.keystore"
android
" digite e digitefonte
keytool faz parte do JDK.
Tente anexar
%{JAVA_HOME}\
à instrução exec ouc:\{path to jdk}\bin
.fonte
"%JAVA_HOME%\bin\keytool" -import -keystore truststore -file certificate.cer -alias my-alias
O KeyTool faz parte do JDK. Você o encontrará, assumindo que você instalou o JDK com configurações padrão, em
$JAVA_HOME/bin
fonte
Robby Pond
A resposta de pode ser generalizada para usarJAVA_HOME
variável de ambiente e também compensar quaisquer espaços em branco que possam ocorrer no caminho (comoProgram Files
):fonte
keytool faz parte do jdk, deve ser $ JAVA_HOME / bin / keytool
fonte
O Keytool faz parte do Java SDK. Você deve encontrá-lo no diretório Java SDK, por exemplo, C: \ Arquivos de Programas \ Java \ jdk1.6.0_14 \ bin
fonte
Na janela do cmd (é necessário executar como administrador),
funciona apenas se você configurou a variável de ambiente do sistema JAVA_HOME. Para configurar sua variável de sistema para o seu caminho, você pode fazer isso
Então, você pode digitar
ou
Em seguida, execute quaisquer comandos fornecidos pelo JAVA jdk, como
Você só precisa responder às perguntas (equivalente a digitar os valores na linha cmd) após pressionar Enter! A chave seria gerada
fonte
keytool está localizado no diretório bin do JDK ($ JAVA_HOME / bin). JAVA_HOME é o diretório de instalação do JDK. Para usar essa linha de comando, você também deve incluir $ JAVA_HOME / bin na sua variável de ambiente PATH.
fonte
Android: onde executar o comando keytool no android
O comando Keytool pode ser executado no prompt de comando dos, se o JRE tiver sido definido na variável do caminho de classe.
Por exemplo, se você deseja obter a impressão digital MD5 do certificado de depuração do SDK para android,
basta executar o seguinte comando ...
onde
C:\Documents and Settings\user\.android>
é o caminho que contém odebug.keystore
que deve ser certificado.Para informações detalhadas, visite http://code.google.com/android/add-ons/google-apis/mapkey.html#getdebugfingerprint
fonte
Dependendo da sua versão do Eclipse (estou usando o Kepler). Vá para Windows> Preferências> Android> Compilar.
Você encontrará o caminho do local do seu keystore de depuração, bem como a impressão digital SHA1 (que você pode apenas copiar e usar)
fonte
Encontrei isso em outro post, que não recebeu muitos votos, mas foi super útil para mim. Então vamos adicioná-lo aqui.
O Android Studio trará uma ferramenta de chave com ele.
C:\Program Files\Android\Android Studio\jre\bin
Você pode ver seu post abaixo por Richar Heap, com uma referência útil. Eu já vi isso antes, mas esqueci. https://stackoverflow.com/a/51524526/4446406
fonte
O KEYTOOL está no JAVAC SDK. Portanto, você deve encontrá-lo dentro do diretório que contém o javac
fonte
Se você instalou o visual studio com suporte ao Xamarin / desenvolvimento móvel, terá uma instalação em java aqui
C:\Program Files\Android\jdk\microsoft_dist_openjdk_{version}\bin\
, como foi o meu caso.fonte
keytool
vem com o JDK. Se você estiver usando o cygwin, isso provavelmente já está no seu caminho. Caso contrário, você pode procurar na pasta bin do JDK.Você provavelmente precisará usar o cygwin de qualquer maneira para que os tubos shell (
|
) funcionem.fonte
Poucas observações enquanto eu estava recebendo o mesmo problema (Windows). 1. Tubo de casca é importante. 2. Se você estiver usando o OpenSSL ou Cygwin, definitivamente precisará instalá-lo. 3. keytool vem com o JDK, portanto, você deve apontar para ele no comando ou ter o CD na pasta JDK / bin (onde o exe reside) 4. O keystore de depuração geralmente está localizado em ~ / .android / debug.keystore 5. a senha é "android", independentemente de você ser digitado ou digitado quando solicitado. 6. Para o nome alternativo, você pode abrir (NÃO SALVAR, basta abrir e fechar) o arquivo de armazenamento de chaves com qualquer editor e lê-lo. 7. O MAIS IMPORTANTE - Há uma diferença ao especificar o caminho do keystore entre aspas e sem. Eu consegui trabalhar usando o caminho do keystore entre aspas duplas. Como remix090378 disse e conforme o instrução, esse comando realmente funcionou - cd C: \ Arquivos de Programas \ Java \ jdk1.7.0_09 \ bin
keytool -exportcert -alias androiddebugkey -keystore "C: \ Users \ nome_do_usuário.android \ debug.keystore" -list -v
fonte
No meu caso, eu já havia gerado um arquivo APK usando o comando
ionic cordova build android --prod
e precisava obter a impressão digital SHA-1 para o arquivo APK já existente. Aqui está como eu consegui executando o seguinte comando no diretório de aplicativos:keytool -list -printcert -jarfile app-debug.apk
Então, basicamente executei o comando acima no seguinte local do aplicativo:
C:\myApp\platforms\android\app\build\outputs\apk\debug>keytool -list -printcert -jarfile app-debug.apk
Isso me deu a impressão digital SHA1 como:
7B:6B:AD:...
Espero que isso ajude alguém!
fonte
Como você instalou o Java e, de preferência, um JDK no seu sistema (respondendo pelo Windows porque o mencionou na sua pergunta), você deve ter o utilitário keytool na
bin
pasta da sua instalação .Se for esse o caso, o que você pode fazer a seguir é adicionar essa pasta bin à
PATH
variável de ambiente da sua instalação do Windows.Na próxima vez em que você abrir um shell do Windows e digitar
keytool
, poderá executar o utilitário real.fonte