¿Puedo usar el mismo archivo de almacén de claves para firmar dos aplicaciones diferentes?

Tengo que subir una nueva aplicación, es sólo el diseño que es un poco diferente. Ayer he generado el archivo del almacén de claves para firmar la aplicación. ¿Puedo usar lo mismo?

Puede utilizar ese keystore de keystore para cualquier número de aplicaciones.

No es necesario generar un nuevo almacén de claves.

La documentación oficial nos dice:

En general, la estrategia recomendada para todos los desarrolladores es firmar todas sus aplicaciones con el mismo certificado, a lo largo de la vida útil esperada de sus aplicaciones. Hay varias razones por las que debe hacerlo …

https://developer.android.com/studio/publish/app-signing.html#considerations

Así que sí, trate de firmar todas sus aplicaciones con el mismo certificado.

Voy a hacer un argumento contrario a la respuesta de consenso hasta ahora.

Estoy de acuerdo en que para la mayoría de los autores de las aplicaciones la mayoría de las veces, compartir el mismo keystore / certificado / contraseña entre sus aplicaciones funcionará bien. Lo crítico es utilizar " el mismo certificado durante toda 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 keystores separados para aplicaciones separadas o familias de aplicaciones. Si crees que alguna vez quieres vender una aplicación a otra persona para publicarla como una actualización a la versión original, tendrás que compartir tu única y única clave de acceso y contraseña con ellos para hacerlo. Probablemente no es un problema enorme, pero un poco de preocupación para usted y, tal vez, un problema de diligencia debida a un comprador lo suficientemente grande.

Además, realmente no leo la misma línea en la documentación de la misma manera que @ol_v_er. Creo que la línea actual:

Debe firmar todas sus aplicaciones con el mismo certificado durante toda la vida útil esperada de sus aplicaciones.

(Nota la falta de una coma en la versión actual) es simplemente haciendo hincapié en que la recomendación de "vida útil" se aplica a todas las aplicaciones, en realidad no le dirige a utilizar el mismo certificado para todas sus aplicaciones.

Quiero añadir alguna aclaración aquí, porque esta pregunta y las respuestas proporcionadas conducen a la confusión para mí. Es crucial entender lo que realmente es un almacén de llaves.

Un almacén de claves es sólo un medio para almacenar de forma segura el par de claves público / privado que se utiliza para firmar sus apks de Android. Así que sí, puede usar el mismo almacén de claves para firmar varios 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 único alias está comprometido, todas sus aplicaciones se habrán visto comprometidas.

Sin embargo, si tiene intención de vender los derechos a sus aplicaciones un día, es posible que no sea una buena idea utilizar el mismo alias para todas sus aplicaciones. Sin embargo, utilizar el mismo almacén de claves, siempre que utilice un alias diferente para cada apk, puede que no sea necesariamente una opción incorrecta. Estoy seguro de que hay una manera que puede mover un certificado de un almacén de claves a otro, de modo que usted puede dar de forma segura las claves necesarias para que sólo el certificado a su comprador.

Para dejarlo muy claro, un almacén de claves es sólo eso, un medio de almacenamiento para las claves. No desempeña ninguna parte real en el proceso de firmar un apk, pero sólo sirve para almacenar las claves que realmente se utilizan para firmar el apk.

Referencias:

Descripció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 que desee. Siempre es mejor utilizar el mismo archivo de almacén de claves para todas las aplicaciones que desarrolle. Eso le ayudará si desea actualizar o modificar la aplicación. En ese momento usted necesita firmar su aplicación con la misma llave.

Firmo todas mis aplicaciones usando el mismo certificado (keystore). Esto da una ventaja si cambio de idea y quiero que mis aplicaciones compartan sus datos.

Como sabrás, 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 el mismo id de usuario a más de una aplicación e inturn las haga ejecutar 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, todos compartirán el mismo ID, siempre que también estén firmados por el mismo certificado. La aplicación con el mismo ID de usuario puede acceder a los datos de los demás y, si se desea, ejecutarse en el mismo proceso

  • El mismo almacén de claves para diferentes aplicaciones
  • ¿Cómo crear una llave RSA keystore Android con una validez infinita?
  • Error de "Versión incorrecta de almacén de claves". ¿Cómo puedo crear un certificado de almacén de claves de versión = 1?
  • ¿Cómo el sistema Android Keystore puede ser seguro?
  • ¿Cómo puedo generar un "Keystore" para Google Play?
  • Firma de apk con .p12
  • ¿Cómo puedo ejecutar la aplicación android en eclipse con una clave firmada?
  • Google Play dice que mi APK construido con Android Studio Build-> Generate Signed APK es debugable
  • Compartir mi almacén de claves de Android con un cliente
  • Almacenamiento de credenciales en la aplicación de Android
  • Alias ​​de clave falta en eclipse mientras firma APK de Android
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.