Configurar Eclipse para usar el almacén de claves firmado
Finalmente he creado un almacén de claves "final" para mi aplicación. Como mi aplicación está utilizando Google Maps, tengo que actualizar todos los diseños para utilizar la nueva clave de la API resultante de la aplicación también.
Ahora estoy plenamente consciente del requisito de exportar un APK firmado para su lanzamiento, pero ¿qué pasa después? Mis pensamientos son que para un mayor desarrollo y pruebas, sería más fácil si pudiera configurar Eclipse para usar mi almacén de claves final en lugar de depurar el almacén de claves … pero no encontré manera de hacer eso? Sólo me permite configurar una clave de depuración "alternativa", pero supongo que no es lo mismo.
- Compartir debug.keystore
- ¿Qué es el archivo de keystore de Android, y para qué se utiliza?
- ¿El android apoya el tipo del keystore de .jks?
- Java Keystore contraseña sin sentido?
- Encuentra el hash clave para una aplicación firmada
Lo siento si estoy demasiado confundido si he entendido mal algo aquí.
- ¿Cómo crear una llave RSA keystore Android con una validez infinita?
- Android Development: Keytool, la creación de un almacén de claves?
- No puede encontrar keytool en un mac
- Android - obteniendo clave hash para la integración de Facebook
- Nombre de la unidad organizativa
- ¿Dónde está debug.keystore en Android Studio
- SSLHandshakeException: Ancla de confianza para la ruta de certificación no encontrada. Solo en la API de Android <19
- ¿Cómo comprobar el nombre del certificado y el alias en los archivos del almacén de claves?
He podido utilizar mi almacén de claves de Google Play como mi almacén de claves de depuración personalizado para ayudar con la depuración de la funcionalidad de compra en la aplicación. Lo mismo podría aplicarse sin duda a la depuración de Google Maps cosas también.
Como Devunwired mencionó , hay advertencias. Pero mi solución fue la siguiente:
- Copie su clave de liberación en algún lugar.
- Cambie la contraseña de la llave de la llave / la contraseña de la llave y el alias clave siguiendo las instrucciones aquí (también, siguiendo las recomendaciones de Devunwired para hacer que parezca un almacén de claves de depuración).
- Cambiar las preferencias de Eclipse> Android> Construir> Configuración personalizada del almacén de claves en la ruta de la copia realizada en el paso 1.
- ¡Hecho!
Puedes configurar un almacén de claves personalizado para usarlo en tus compilaciones de depuración (las que ocurren cuando haces clic en Ejecutar …) en Eclipse yendo a Preferencias -> Android -> Construye e ingresa el nombre del archivo en la opción "Depuración personalizada" .
Sin embargo , tiene la advertencia de que debe seguir las mismas reglas que un almacén de claves de depuración tradicional, principalmente:
- La contraseña de keystore debe ser "android"
- Debe contener una clave llamada "androiddebugkey"
- La contraseña de esa clave debe ser "android"
Por lo tanto, aunque es posible firmar sus aplicaciones en depuración con el mismo almacén de claves que Exportar con, requiere que su almacén de claves de producción se vea como un almacén de depuración, lo que lo hace menos seguro si alguien obtiene ahold si el archivo (sería más fácil Para inspeccionar y adivinar las contraseñas).
HTH
Para que Eclipse pueda firmar automáticamente cuando se implementa, debe configurar un almacén de claves que se comporte como el depurador de claves. Esto significa que debe haber un 'androiddebugkey' y la clave y keystore contraseña debe ser 'android'. Por lo tanto, recomiendo lo siguiente:
- Hacer una copia de su almacén de claves, copié el mío en un archivo llamado iap.keystore
- Abrir terminal / ventana de comandos con keytool en la ruta (para mí la ruta de acceso es D: \ NVPACK \ jdk1.6.0_45 \ bin \ keytool.exe) o utilizar el camino completo para
keystore
en los comandos a continuación - Cambiar la contraseña de keystore a 'android':
-
keytool -storepasswd -keystore iap.keystore
- Siga las instrucciones para ingresar su antigua contraseña de keystore
- Siga las instrucciones para ingresar a
android
como la nueva contraseña - Seguir la solicitud para confirmar
android
como contraseña
-
- Cambie el nombre de su clave a
androiddebugkey
( reemplaceOld_Key_Store_Name
por su nombre de clave actual en el siguiente comando)-
keytool -changealias -keystore iap.keystore -alias Old_Key_Store_Name -destalias androiddebugkey
- Siga las instrucciones para ingresar su contraseña de keystore (que ahora es
andorid
) - Siga las instrucciones para ingresar su contraseña
Old_Key_Store_Name
(esto es lo que antes tenía su contraseña clave establecida en)
-
- Cambiar la contraseña de su
androiddebugkey
-
keytool -keypasswd -keystore iap.keystore -alias androiddebugkey
- Siga las instrucciones para ingresar su contraseña de keystore (que ahora es
andorid
) - Siga las instrucciones para ingresar su contraseña de
androiddebugkey
(esto es lo que antes tenía su contraseña clave establecida en) - Siga las instrucciones para ingresar a
android
como la nueva contraseña clave - Seguir la solicitud para confirmar
android
como contraseña clave
-
- Ahora tiene un almacén de claves (con clave) que Eclipse puede usar para firmar automáticamente constructores.
- Cargue Eclipse.
- Ventana -> Preferencias -> Android -> Construir
- Siga "Custom debug keystore" y busque el archivo iap.keystore que creamos anteriormente
- DE ACUERDO
Ahora, cuando inicie / depure su proyecto, utilizará el almacén de claves que acabamos de configurar para firmar su proyecto. Esto permitirá que cosas como IAP funcionen.
CUIDADO: esto es conveniente, pero por supuesto si alguien se apodera de su iap.keystore podrán firmar cosas como usted usando 'android' como keystore / key password. Esperemos que esto es, obviamente, de los pasos enumerados anteriormente, pero sólo tomar un segundo para apreciar lo que esto significa para usted (o su empresa). A continuación, basándose en que decidir si los riesgos son aceptables, y si necesita llevar a cabo cualquier medida adicional para garantizar la seguridad de este archivo.
Establecemos el keystore personalizado para usarlo en nuestras compilaciones de depuración. Eclipse Ir a Preferencias -> Android -> Construir y ent el nombre del archivo en la "Custom debug keystore".
Importante cuando creamos nuestro almacén de claves para la aduana de eclipse:
La contraseña de keystore debe ser "android" Debe contener una clave llamada "androiddebugkey" La contraseña de esa clave debe ser "android" Por lo tanto, aunque es posible firmar sus aplicaciones en depuración con el mismo almacén de claves que con Exportar, Keystore para que parezca una tienda de depuración, lo que hace que sea menos seguro si alguien tiene ahold si el archivo (sería más fácil de inspeccionar y adivinar las contraseñas).
Si queremos cambiar la contraseña de keystore: $ keytool -storepasswd -keystore my.keystore
Si queremos cambiar la contraseña del alias de keystore: $ keytool -keypasswd -keystore my.keystore -alias mi_nombre
Si queremos cambiar el alias del keystore: $ keytool -changealias -keystore my.keystore -alias mi_nombre -destalias my_new_name
Vkj
Aquí hay las instrucciones para convertir un almacén de claves regular en un depurador de claves: https://stackoverflow.com/a/15754187/917362
Puede ingresar su depuración y su versión SHA1 para la misma clave de la API de Google usando la Consola de desarrolladores de Google (console.developers.google.com).
De esta forma, tendrá la misma clave de API para ambos y ya no tendrá que cambiarla en AndroidManifest.xml.
Tenemos el mismo problema hace algún tiempo en nuestra oficina. Dado que necesitábamos esto con bastante frecuencia, escribimos un script simple para facilitar la conversión de keystores de liberación a los de depuración.
El script está disponible en https://github.com/IntellexApps/key2debug
Lo estamos utilizando desde hace algún tiempo, por lo que debe ser bastante estable.
¡aclamaciones!
- Contraer todo el grupo excepto el grupo seleccionado en el listview expandible android
- Cómo utilizar la herramienta Monitor (DDMS) para depurar la aplicación