2011-10-07 16 views

Respuesta

55

Puede usar ese keystore para cualquier cantidad de aplicaciones.

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

+6

Y para 'Alias', ¿qué debo escribir ? –

+0

Un almacén de claves * CONTIENE * los pares de llaves públicos/privados que componen un certificado de firma. Un keystore puede contener muchos pares de claves. Un 'alias' es una referencia a un par de claves particular en el almacén de claves. Un keystore puede contener todos sus pares de llaves, pero debe tener un par de llaves por aplicación. Use el nombre de la aplicación que está firmando como alias. Puede tener contraseñas separadas para su almacén de claves y para cada par de llaves dentro de él. Puede cambiar estas contraseñas e importar/exportar pares de claves desde el almacén de claves o agregar nuevos pares de claves a su almacén de claves. Todo esto se hace con el comando de la línea de comando 'keytool'. Búscalo. – brycewjohnson

2

¡Por supuesto! Puede usar el mismo archivo de almacén de claves tantas veces como desee. Siempre es mejor usar 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, debe firmar su solicitud con la misma clave.

31

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í, intenta iniciar sesión todas sus aplicaciones con el mismo certificado.

+6

Y para 'Alias', ¿qué debo escribir? –

+5

Para hacerlo simple, también use el mismo para todas sus aplicaciones. –

29

Haré un argumento en contra de la respuesta consensuada hasta el momento.

Acepto que para la mayoría de los autores de aplicaciones la mayor parte del tiempo, compartir el mismo keystore/certificate/password entre tus aplicaciones funcionará bien. Lo más importante es usar "the same certificate throughout the expected lifespan of your applications" para que la aplicación pueda actualizarse.

Pero puedo pensar en una muy buena razón para tener almacenes de claves separados para aplicaciones separadas o familias de aplicaciones. Si crees que alguna vez querrás vender una aplicación a otra persona para que la publiquen como una actualización de la original, tendrás que compartir tu keystore y contraseña únicos para poder hacerlo. Probablemente no sea un gran problema sino un poco preocupante para usted y, tal vez, un problema de debida diligencia 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 a lo largo de la esperanza de vida esperada de sus aplicaciones.

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

+3

¡Mantener los almacenes de claves separados para cada aplicación debería ser el camino a seguir! – Sufian

1

que hago firmar todos mis aplicaciones utilizando el mismo certificado (almacén de claves). Esto ofrece una ventaja si cambio de opinión y quiero que mis aplicaciones compartan sus datos.

Como ya 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 el mismo ID de usuario a más de una aplicación e inturn haga que se ejecuten en un solo proceso y compartan los datos.

de Doc androide android:sharedUserId

androide: sharedUserId

El nombre de un ID de usuario de Linux que será compartido con otras aplicaciones. De forma predeterminada, Android asigna a cada aplicación su propia identificación de usuario única. Sin embargo, si este atributo se establece en el mismo valor para dos o más aplicaciones, todas compartirán la misma ID, siempre que también estén firmadas por el mismo certificado. Aplicación con el mismo ID de usuario puede acceder a los datos de los demás y, si lo desea, ejecutar en el mismo proceso

Cuestiones relacionadas