¿Cómo puedo crear un almacén de claves?
¿Cuáles son los pasos para crear un almacén de claves para Android?
Necesito usar Google Maps en mi aplicación y no sé qué pasos me salté. Proporcioneme los pasos detallados específicos (no los entendí en las guías).
Para responder a la pregunta del título, cree un almacén de claves con la utilidad Java Keytool que viene con cualquier distribución JDK estándar y puede ubicarse en %JAVA_HOME%\bin
. En Windows esto normalmente sería C:\Program Files\Java\jre7\bin
.
En Windows, abra una ventana de comando y cambie a ese directorio. En el sistema operativo tipo Linux, haga lo mismo con una terminal. Entonces corre:
keytool -genkey -v -keystore my-release-key.keystore -alias alias_name -keyalg RSA -keysize 2048 -validity 10000
Keytool le solicita que proporcione contraseñas para el almacén de claves, proporcione los campos de Nombre distinguido y luego la contraseña de su clave. Luego genera el almacén de claves como un archivo llamado my-release-key.keystore
en el directorio en el que se encuentra. El almacén de claves y la clave están protegidos por las contraseñas que ingresó. El almacén de claves contiene una única clave, válida por 10000 días. Es alias_name
un nombre que utilizará más adelante para referirse a este almacén de claves al firmar su aplicación.
Para obtener más información sobre Keytool, consulte la documentación en: http://docs.oracle.com/javase/6/docs/technotes/tools/windows/keytool.html
y para obtener más información sobre cómo firmar aplicaciones de Android, vaya aquí: http://developer.android.com/tools/publishing/app-signing.html
Firmar su aplicación en Android Studio
Para firmar su aplicación en modo de lanzamiento en Android Studio, siga estos pasos:
1- En la barra de menú, haga clic en Construir > Generar APK firmado.
2-En la ventana del Asistente para generar APK firmado, haga clic en Crear nuevo para crear un nuevo almacén de claves. Si ya tiene un almacén de claves, vaya al paso 4.
3- En la ventana Nuevo almacén de claves, proporcione la información requerida como se muestra en la figura. Su clave debe ser válida durante al menos 25 años, para que pueda firmar actualizaciones de la aplicación con la misma clave durante toda la vida útil de su aplicación.
4- En la ventana del Asistente para generar APK firmado, seleccione un almacén de claves, una clave privada e ingrese las contraseñas para ambos. Luego haga clic en Siguiente.
5- En la siguiente ventana, seleccione un destino para el APK firmado y haga clic en Finalizar.
referencia
http://developer.android.com/tools/publishing/app-signing.html
Estaba loco buscando cómo generar un .keystore usando en el shell un comando de una sola línea , para poder ejecutarlo desde otra aplicación. Esta es la forma:
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 es un identificador único para la aplicación en .keystore
- cn el nombre completo de la persona u organización que genera el .keystore
- ou Unidad Organizacional que crea el proyecto, es una subdivisión de la Organización que lo crea. Ex. android.google.com
- o Organización propietaria de todo el proyecto. Es un alcance más alto que el nuestro . Ej.: google.com
- c El código corto del país. Ej: Para Estados Unidos es "EE.UU."
alias Identificador de la aplicación como una entidad única dentro del .keystore (puede tener muchas)
- keypass Contraseña para proteger ese alias específico.
- keystore Ruta donde se creará el archivo .keystore
.ks
(la extensión estándar es en realidad ) - storepass Contraseña para proteger todo el contenido .keystore .
- validez Cantidad de días que la aplicación será válida con este .keystore
A mí me funcionó muy bien, no pide nada más en la consola, solo crea el archivo. Para obtener más información, consulte keytool: herramienta de administración de claves y certificados .
Cree un archivo de almacén de claves desde la línea de comando:
Abrir línea 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]
Ingrese> Le pedirá la contraseña> ingrese la contraseña (será invisible)
Enter keystore password: Re-enter new password:
Entra > Te pedirá tus datos.
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
Ingresar > Ingresar S
Is CN=AB, OU=Self, O=Self, L=INDORE, ST=MP, C=91 correct? [no]: Y
Ingresar > Ingresar contraseña nuevamente.
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:
[Almacenamiento C:/index.keystore]
- ¡¡¡Y ESTÁS TERMINADO!!!
Exportar en eclipse:
Exporte su paquete de Android a .apk con su archivo de almacén de claves creado
Haga clic derecho en el paquete que desea exportar y seleccione exportar
Seleccione Exportar aplicación de Android > Siguiente
Próximo
Seleccione Usar almacén de claves existente > Examinar archivo .keystore > ingrese la contraseña > Siguiente
Seleccione Alias > ingrese la contraseña > Siguiente
Explorar destino APK > Finalizar
En Android Estudio:
Crear almacén de claves [.keystore/.jks]
en Studio...
Haga clic en Generar (ALT+B) > Generar APK firmado...
Haga clic en Crear nuevo... (ALT+C)
Explorar ruta del almacén de claves (MAYÚS+ENTRAR) > Seleccionar ruta > Ingresar nombre > Aceptar
Complete el detalle de su
.jks/keystore
expedientePróximo
Tu archivo
Ingrese la contraseña maestra de Studio (puede RESTABLECER si no la sabe) > Aceptar
Seleccione *Carpeta de destino* > Tipo de compilación
release : for publish on app store debug : for debugging your application
Haga clic en Finalizar
Hecho !!!