Tengo que cargar una nueva aplicación, es solo el diseño lo que es un poco diferente. Ayer generé el archivo del almacén de claves para firmar la aplicación. ¿Puedo usar lo mismo?
Tengo que cargar una nueva aplicación, es solo el diseño lo que es un poco diferente. Ayer generé el archivo del almacén de claves para firmar la aplicación. ¿Puedo usar lo mismo?
Respuestas:
Puede usar eso keystore
para cualquier cantidad de aplicaciones.
No es necesario generar un nuevo almacén de claves.
Haré un argumento en contra de la respuesta de consenso hasta ahora.
Estoy de acuerdo en que para la mayoría de los autores de aplicaciones la mayor parte del tiempo, compartir el mismo almacén de claves / certificado / contraseña entre sus aplicaciones funcionará bien. Lo fundamental es utilizar " el mismo certificado durante la vida útil esperada de sus aplicaciones " para que la aplicación pueda actualizarse.
Pero puedo pensar en una muy buena razón para tener almacenes de claves separados para aplicaciones o familias de aplicaciones separadas. Si cree que alguna vez podría querer vender una aplicación a otra persona para que la publique como una actualización de la original, tendrá que compartir su único almacén de claves y contraseña con esa persona para hacerlo. Probablemente no sea un gran problema, pero un poco de preocupación para usted y, quizás, un problema de diligencia debida para un comprador lo suficientemente grande.
Además, realmente no leo la misma línea en la documentación de la misma manera que lo hace @ol_v_er. Creo que la línea actual:
Debe firmar todas sus aplicaciones con el mismo certificado durante la vida útil esperada de sus aplicaciones.
(tenga en cuenta la falta de una coma en la versión actual) simplemente enfatiza que la recomendación de 'vida útil' se aplica a todas las aplicaciones, sin indicarle que use el mismo certificado para todas sus aplicaciones.
La documentación oficial nos dice:
En general, la estrategia recomendada para todos los desarrolladores es firmar todas sus aplicaciones con el mismo certificado, durante la vida útil esperada de sus aplicaciones. Hay varias razones por las que debería hacerlo ...
https://developer.android.com/studio/publish/app-signing.html#considerations
Entonces sí, intente firmar todas sus aplicaciones con el mismo certificado.
Quiero agregar algunas aclaraciones aquí, porque esta pregunta y las respuestas proporcionadas me confunden. Es fundamental comprender qué es realmente un almacén de claves.
Un almacén de claves es solo un medio para almacenar de forma segura el par de claves pública / privada que se utiliza para firmar sus aplicaciones de Android. Entonces sí, puede usar el mismo almacén de claves para firmar múltiples apks, sin ningún problema. También puede usar el mismo alias (cada alias es un certificado) para firmar varios apks, y funcionará. Sin embargo, tiene implicaciones de seguridad. Si su alias único está comprometido, entonces todas sus aplicaciones estarán comprometidas.
Sin embargo, si tiene la intención de vender los derechos de sus aplicaciones algún día, entonces usar el mismo alias para todas sus aplicaciones puede no ser una buena idea. Sin embargo, usar el mismo almacén de claves, siempre que use un alias diferente para cada apk, puede no ser necesariamente una mala opción. Estoy seguro de que hay una manera de mover un certificado de un almacén de claves a otro, de modo que pueda proporcionar de forma segura las claves necesarias solo para ese certificado a su comprador.
Para que quede muy claro, un almacén de claves es solo eso, un medio de almacenamiento de claves. No juega ningún papel real en el proceso de firma de una apk, sino que solo sirve para almacenar las claves que se utilizan realmente para firmar la apk.
Referencias:
Comprensión del almacén de claves, certificados y alias
https://www.digitalocean.com/community/tutorials/java-keytool-essentials-working-with-java-keystores
¡Por supuesto! Puede utilizar el mismo archivo de almacén de claves tantas veces como desee. Siempre es mejor utilizar el mismo archivo de almacén de claves para todas las aplicaciones que desarrolle. Eso ayudará si desea actualizar o modificar la aplicación. En ese momento debes firmar tu solicitud con la misma clave.
Firmo todas mis aplicaciones con el mismo certificado (almacén de claves). Esto es una ventaja si cambio de opinión y quiero que mis aplicaciones compartan sus datos.
Como sabrá, Android identifica cada aplicación con un UID. Si todas sus aplicaciones están firmadas por el mismo certificado, puede solicitar a Android que asigne la misma identificación de usuario a más de una aplicación y, a su vez, hacer que se ejecuten en un solo proceso y compartir los datos.
Desde android doc android: sharedUserId
android: sharedUserId
El nombre de un ID de usuario de Linux que se compartirá con otras aplicaciones. De forma predeterminada, Android asigna a cada aplicación su propio ID de usuario único. Sin embargo, si este atributo se establece en el mismo valor para dos o más aplicaciones, todas compartirán el mismo ID, siempre que estén también firmadas por el mismo certificado. Las aplicaciones con el mismo ID de usuario pueden acceder a los datos de los demás y, si lo desea, ejecutar en el mismo proceso
Actualizacion reciente
Si desea inscribirse en la firma de aplicaciones de Google , debe usar una nueva clave diferente para firmar su apk o paquete; de lo contrario, después de cargar la consola de Google, aparecerá un mensaje de error que dice
Subiste un APK o un paquete de aplicaciones de Android que está firmado con una clave que también se usa para firmar los APK que se entregan a los usuarios. Debido a que está inscrito en la firma de aplicaciones de Google Play, debe firmar su APK o Android App Bundle con una nueva clave antes de cargarlo.