Prog Android Compilando diferentes versións
Revisión del 10:48 11 sep 2018 de Wiki (discusión | contribuciones)
Introdución
- Android Studio fai uso de 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 neste enlace.
Versións
- Máis información 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. 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.
- 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.
- Creando novos flavors
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 neste enlace.
No exemplo están creadas dúas dimensións. Poderíamos crear unha soa. No flavor de proba tamén facemos uso da variable versionNameSuffix para asociarlle un sufixo ao nome así como tamén a variable applicationIdSuffix para asociarlle á applicationId.
- 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).