Gestion des versions sous Android

 

Il existe deux types de versions que l'on pourra gérer sous android:

 

Version de l'API Android

Pour connaître dans votre programme la version de l'API d'Android utilisée lors de son exécution, il faudra utiliser la constante VERSION.SDK_INT (anciennement SDK en API 4) de la classe Build.

Dans votre code, vous taperez par exemple

if (Build.VERSION.SDK_INT>=Build.VERSION_CODES.HONEYCOMB)

...

La liste des codes versions pourra être trouvée sur le site http://developer.android.com/reference/android/os/Build.VERSION.html#CODENAME

 

Mais il est possible aussi d'indiquer à Android avant l'exécution de votre application, la version minimale acceptée par votre application. Cette option se fait via le fichier AndroidManifest.xml.xml.

Il s'agit de l'attribut uses-sdk.minSdkVersion qui indique la version minimale du SDK exigée par votre application (donc les versions supérieures seront aussi acceptées):

<manifest xmlns:android="http://schemas.android.com/apk/res/android"

package="fr.free.supertos.cnaf.hello">

<uses-sdk android:minSdkVersion="10" />

[...]

 

Version de votre application

Cette fois-ci, il s'agit d'indiquer la version de notre application (plutôt intéressant si vous voulez déposer votre code sous Google Play par exemple).

android:versionName est une chaîne lisible de caractères représentant le nom (Par exemple sous Android, chaque version à un nom de code) ou le numéro de version de votre application.
android:versionCode est un entier représentant le numéro de version de l’application. C'est lui le plus important pour différencier les différentes versions de votre application.

C'est toujours le fichier AndroidManifest.xml.xml qui contient ces informations, par exemple pour mon application Hello:

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="fr.free.supertos.cnaf.hello"
android:versionCode="1"
android:versionName="Hello V1.0" >

[...]