Diferencia entre revisiones de «Prog Android Compilando diferentes versións»

De MediaWiki
Ir a la navegación Ir a la búsqueda
(Página creada con « https://developer.android.com/studio/build/ <br> -- Ángel D. Fernández González -- (2018).»)
 
Línea 1: Línea 1:
 +
=Introdución=
  
 +
* Android Studio fai uso de [http://wiki.cifprodolfoucha.es/index.php?title=Instalaci%C3%B3n_Android_Studio#Actualizaci.C3.B3ns_Plugin_Gradle Gradle, como xa comentamos na unidade 1].
 +
 +
: Este sistema de construción de aplicacións non so nos libra de xestionar as dependencias coas librerías e jar que poidamos necesitar para construír a nosa APK, seno que tamén deixa definir dunha forma moi sinxela diferentes versións dunha mesma aplicación, aproveitando todo o que sexa común delas.
 +
 +
 +
* Un caso típico pode ser cando queremos ter unha versión dunha aplicación cun publicidade e outra sen ela.
 +
 +
 +
 +
 +
* Máis información [https://developer.android.com/studio/build/ neste enlace].
 +
<br />
 +
=Versións=
 +
 +
* Máis información [https://developer.android.com/guide/topics/manifest/manifest-element neste enlace].
 +
 +
 +
* Cando creamos unha aplicación, se definen unha serie de parámetros necesarios para identificala:
 +
 +
:* versionCode: '''Número integer''' que indica cando unha versión é máis nova que outra. O número máis alto indica versión superior. </u>Non é o número que se amosa ao usuario cando instalan a aplicación</u>. Cando subimos unha nova versión a Google Play, debemos de incrementar este valor.
 +
:* versionName: '''Cadea''' que se amosa ao usuario cando instala unha nova versión da aplicación.
 +
:* package: Nome do paquete. Este nome serve:
 +
::* É o espazo de nome asociado á clase R, de tal forma que dita clase (Clase R) terá de nome: nome_paquete.R
 +
::* Todas as 'activity' que se definan no 'AndroidManifiest.xml' da forma <activity android:name="<b>.MainActivity</b>">, terán asociado o nome do paquete para resolver o seu nome da forma: nome_paquete.MainActivity.
 +
 +
::* Cando se instala unha aplicación nun dispositivo móbil, débese instalar nun cartafol único, non compartido por outra aplicación. Este cartafol está representado polo nome do paquete. Este debe ser único para poder subir a aplicación a Google Play. Veremos que o identificador da aplicación pode ser <u>sobrescrito</u> pola variable '''applicationId''' (o veremos na sección de flavors).
 +
 +
 +
* Todos estos datos poden ir no arquivo '''AndroidManifiest.xml'''.
 +
: A versionCode e versionName non obstante se definen no arquivo '''build.gradle''' do módulo, xa que desta forma podemos ter diferentes versión da mesma aplicación e probar a executalas.
 +
 +
 +
 +
 +
[[Imagen:PDM_versions_1.jpg|500px|center]]
 +
: Podemos ver na imaxe o nome do paquete. O id da aplicación é collido de dito nome inicialmente, pero se garda nunha variable que pode ser cambiada independentemente do nome do paquete.
 +
 +
 +
 +
 +
 +
<br />
 +
=Flavors=
 +
 +
 +
* Os flavors (sabores) representan cada un dos tipos de aplicacións que queremos ter.
 +
: Cando creamos un novo proxecto, créase un 'flavor por defecto' denominado '''defaultConfig'''. É neste flavor onde se garda o versionName e versionCode.
 +
 +
 +
<gallery caption="Creando novos flavors" widths="350" heights="300px" perrow="2">
 +
Image:PDM_flavors_1.jpg | Podemos ir a través da ventá '''Proyect Structure''', ou premendo '''F4''' o premendo o botón dereito do rato sobre o proxecto e escollendo a opción '''Open Module Settings'''.
 +
Image:PDM_flavors_2.jpg | Na lapela '''flavors''' podemos crear as versións que queiramos. Lembrar que estamos a crear versión sobre o mesmo módulo '''App'''. Poderíamos crear novos módulos con outros flavors diferentes.
 +
Image:PDM_flavors_3.jpg | Como vemos é aquí onde se garda o versionName e versionCode. O versionNameSuffix se engade ao versionName.
 +
Image:PDM_flavors_4.jpg | Os novos flavors se crean no arquivo '''build.gradle''' do módulo (neste caso app). No momento de escribir esta manual AndroidStudio informa que todos os flavors teñen que ter a mesma 'dimensión' e da un erro. Cada flavor-dimensión ben a ser unha forma de agrupar a diferentes sabores (flavors) baixo un mesmo nome. Quedará máis claro despois. Máis información [https://code.tutsplus.com/es/tutorials/using-gradle-build-variants--cms-25005 neste enlace].
 +
Image:PDM_flavors_5.jpg | No exemplo están creadas dúas dimensións. Poderíamos crear unha soa. No flavor de proba tamén facemos uso da variable [http://google.github.io/android-gradle-dsl/current/com.android.build.gradle.internal.dsl.ProductFlavor.html#com.android.build.gradle.internal.dsl.ProductFlavor:versionNameSuffix versionNameSuffix]  para asociarlle un sufixo ao nome así como tamén a [http://google.github.io/android-gradle-dsl/current/com.android.build.gradle.internal.dsl.ProductFlavor.html#com.android.build.gradle.internal.dsl.ProductFlavor:applicationIdSuffix variable applicationIdSuffix] para asociarlle á applicationId.
 +
Image:PDM_flavors_7.jpg | Podemos crear un novo 'flavor' que sexa a nosa aplicación final, sen ser de proba.
 +
 +
</gallery>
 +
 +
 +
* Máis información sobre como configurar o id da aplicación [https://developer.android.com/studio/build/application-id neste enlace].
 +
 +
* Máis información sobre os 'Test Intrumentation Runner' [https://developer.android.com/training/testing/unit-testing/ neste enlace].
  
  
−
https://developer.android.com/studio/build/
 
  
  

Revisión del 10:48 11 sep 2018

Introdución

Este sistema de construción de aplicacións non so nos libra de xestionar as dependencias coas librerías e jar que poidamos necesitar para construír a nosa APK, seno que tamén deixa definir dunha forma moi sinxela diferentes versións dunha mesma aplicación, aproveitando todo o que sexa común delas.


  • Un caso típico pode ser cando queremos ter unha versión dunha aplicación cun publicidade e outra sen ela.




Versións


  • Cando creamos unha aplicación, se definen unha serie de parámetros necesarios para identificala:
  • versionCode: Número integer que indica cando unha versión é máis nova que outra. O número máis alto indica versión superior. Non é o número que se amosa ao usuario cando instalan a aplicación. Cando subimos unha nova versión a Google Play, debemos de incrementar este valor.
  • versionName: Cadea que se amosa ao usuario cando instala unha nova versión da aplicación.
  • package: Nome do paquete. Este nome serve:
  • É o espazo de nome asociado á clase R, de tal forma que dita clase (Clase R) terá de nome: nome_paquete.R
  • Todas as 'activity' que se definan no 'AndroidManifiest.xml' da forma <activity android:name=".MainActivity">, terán asociado o nome do paquete para resolver o seu nome da forma: nome_paquete.MainActivity.
  • Cando se instala unha aplicación nun dispositivo móbil, débese instalar nun cartafol único, non compartido por outra aplicación. Este cartafol está representado polo nome do paquete. Este debe ser único para poder subir a aplicación a Google Play. Veremos que o identificador da aplicación pode ser sobrescrito pola variable applicationId (o veremos na sección de flavors).


  • Todos estos datos poden ir no arquivo AndroidManifiest.xml.
A versionCode e versionName non obstante se definen no arquivo build.gradle do módulo, xa que desta forma podemos ter diferentes versión da mesma aplicación e probar a executalas.



PDM versions 1.jpg
Podemos ver na imaxe o nome do paquete. O id da aplicación é collido de dito nome inicialmente, pero se garda nunha variable que pode ser cambiada independentemente do nome do paquete.




Flavors

  • Os flavors (sabores) representan cada un dos tipos de aplicacións que queremos ter.
Cando creamos un novo proxecto, créase un 'flavor por defecto' denominado defaultConfig. É neste flavor onde se garda o versionName e versionCode.



  • Máis información sobre como configurar o id da aplicación neste enlace.
  • Máis información sobre os 'Test Intrumentation Runner' neste enlace.
















-- Ángel D. Fernández González -- (2018).