Diferencia entre revisiones de «PDM Avanzado Empaquetado e distribución»

De MediaWiki
Ir a la navegación Ir a la búsqueda
Línea 123: Línea 123:
  
  
 +
 +
<br />
 +
'''[https://wiki.cifprodolfoucha.es/index.php?title=Programaci%C3%B3n_de_dispositivos_m%C3%B3biles#UNIDADE_8:_Empaquetado_e_distribuci.C3.B3n._Xeraci.C3.B3n_de_arquivos_APK. Enlace a la página principal de la UD8]'''
 +
<br />
 +
<br />
 +
'''[https://wiki.cifprodolfoucha.es/index.php?title=Programación_de_dispositivos_móbiles Enlace a la página principal del curso]'''
 +
<br />
  
  
 
<br> -- [[Usuario:angelfg|Ángel D. Fernández González]] e [[Usuario:Carrion|Carlos Carrión Álvarez]] -- (2015).
 
<br> -- [[Usuario:angelfg|Ángel D. Fernández González]] e [[Usuario:Carrion|Carlos Carrión Álvarez]] -- (2015).

Revisión del 19:04 10 ene 2021

Introdución

Unha vez temos a aplicación rematada chega o momento de, ou ben pasala ó/ós usuarios que van facer uso dela ou ben subila ó Market de Android para a súa comercialización.

Para poder realizar este paso é necesario xerar o APK da aplicación cun certificado válido.

Temos que xerar o arquivo apk da aplicación pero coa aplicación 'firmada' cun keystore que ven ser un almacén de claves.

Cando xeremos o apk primeiro daranos a opción de crear un novo almacén ou utilizar un xa existente.

Nun almacén imos poder 'gardar' moitas aplicacións. Cada almacén terá unha clave.

Así mesmo, cada aplicación terá outra clave asociada o seu certificado.

Polo tanto cando xeremos o apk imos ter que gardar dúas claves: unha para o almacén e outra para cada unha das aplicacións gardadas en dito almacén.


A firma é moi importante xa que cada vez que cambiemos de versión teremos que firmala có mesmo certificado para que o S.O. Android o interprete como unha actualización da aplicación.

Modificando a versión compilada de debug a release


Graficamente

Simplemente imos a opción de menú Build e escollemos Generated Signed Apk.

PDM Avanzada Empaquetado 1.jpg


Aparece un asistente:


Agora xa podemos instalar o apk en calquera dispositivo con Android.



  • Nota: Indicar que cando creamos o almacén de chaves, pode saír o seguinte aviso de erro: 'el almacén de claves jks utiliza un formato propietario. se recomienda migrar a pkcs12'
O almacén funciona correctamente, pero se queremos pasalo ao formato recomendado temos que executar a seguinte orde:
1 keytool -importkeystore -srckeystore [MY_KEYSTORE.jks] -destkeystore [MY_FILE.p12] -srcstoretype JKS - deststoretype PKCS12
keytool é un executable que se atopa no cartafol /bin/ do Java SDK instalado.
Vos poderá introducir o password do novo almacén (formato p12), o password do almacén anterior (formato jsk) e o password do certificado/s gardados no almacén.

Dende consola

Esta información tamén se pode obter dende unha consola ou terminal. En Windows debemos utilizar unha consola con permisos administrativos (executar como administrador).

Debemos situarnos coa orde cd (se non o temos no path) no cartafol onde estea instalado o JDK e dentro deste no cartafol /bin/.

Nese cartafol se atopa o executable keytool.

  • LINUX:
1 ./keytool -genkey -v -keystore almacen.keystore -alias clavealmacen -keyalg RSA -keysize 2048 -validity 10000


  • WINDOWS:
1 keytool -genkey -v -keystore almacen.keystore -alias clavealmacen -keyalg RSA -keysize 2048 -validity 10000

Neste caso estariamos a crear un almacén e un certificado (key) válido por 10.000 días.

Ó darlle a 'enter' pediranos o password do almacén (mínimo 6 caracteres) e a información que preguntou antes graficamente para o certificado (key):

PDM Avanzada Empaquetado 6.jpg

Unha vez feito xa temos o almacén creado.

Obtendo a pegada dixital SHA1 dun almacén para utilizar con GoogleMap

Relacionado coa Unidade vista anteriormente de Google Map temos a opción de obter a clave SHA1 dun almacén de datos, necesario para poder ver o mapa de Google Map nunha aplicación que queiramos dar ós usuarios.

Para obter o SHA1 debemos escribir dende consola:

1 keytool -list -keystore almacen.keystore

Sendo almacen.keystore o almacén onde se atopa a key que imos utilizar para firmar a nosa aplicación.



Firmando automaticamente una aplicación tanto en modo debug como release

  • Podemos facer que de forma automática o Android Studio 'firme' a aplicación antes de instala no emulador / dispositivo.
Para facelo, imos a ventá de Project Structure:
Imos a lapela de Signing e prememos o símbolo 'máis'. Indicamos os datos do almacén de claves creado previamente.
PDM Avanzada Empaquetado firma 1.jpg


  • Agora debemos editar o arquivo build.gradle a nivel de módulo.
Nese arquivo estará a configuración creada no paso anterior.
Temos que modificar as entradas 'release' e 'debug' para que fagan uso do almacén de claves configurado anteriormente.


PDM Avanzada Empaquetado firma 2.jpg





Enlace a la página principal de la UD8

Enlace a la página principal del curso



-- Ángel D. Fernández González e Carlos Carrión Álvarez -- (2015).