52 votes

Valeur du nom de version de l'utilisateur dans le code AndroidManifest.xml

Le site AndroidManifest.xml contient le nom de la version de l'application, quelque chose comme

android:versionName="1.0"

Maintenant, la question est la suivante : est-il possible d'accéder à ce nom de version dans le code source, de manière à pouvoir l'afficher, par exemple, dans une fenêtre "About" ? Dialog ?

119voto

Konstantin Burov Points 34011

Si vous utilisez ADT et Eclipse :

String version = getPackageManager().getPackageInfo(getPackageName(), 0).versionName;

Si vous utilisez Gradle, il existe une méthode plus simple, puisqu'il place les données dans BuildConfig pour vous :

String version = BuildConfig.VERSION_NAME;

38voto

DMH Points 1579

La réponse de Konstantin (ci-dessus) est correcte, mais pour ce que ça vaut, j'ai découvert que j'obtenais une erreur de compilation si je n'attrapais pas un fichier de type NameNotFoundException comme suit :

import android.content.pm.PackageManager.NameNotFoundException;
try {
    String version = getPackageManager().getPackageInfo(getPackageName(), 0).versionName;
} catch (NameNotFoundException e) {
    Log.e("tag", e.getMessage());
}

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X