68 votes

Obtenez de l'AndroidManifest.xml Contenu dans le code

Je veux savoir comment analyser la AndroidManifest.xml fichier afin d'obtenir le Numéro de Version, par le biais de code. android:versionName

144voto

Vikas Patidar Points 19772

Pas besoin d'analyser l' AndroidManifest.xml fiche pour ce.

Vous pouvez l'obtenir en utilisant:

try
{
    String app_ver = this.getPackageManager().getPackageInfo(this.getPackageName(), 0).versionName;
}
catch (NameNotFoundException e)
{
    Log.v(tag, e.getMessage());
}

Utilisez ce à l'intérieur de votre onCreate() méthode.

35voto

ForeverWintr Points 611

Dans le cas où c'est utile à quelqu'un d'autre, vous pouvez également accéder @string des ressources de AndroidManifest.xml comme vous pouvez le faire à partir d'autres fichiers xml.

Ainsi, par exemple, dans AndroidManifest.xml:

android:versionName="@string/app_versionName"

et dans le code:

string versionName = getResources().getString(R.string.app_versionName);

De cette façon, vous n'avez pas besoin de l' (ennuyeux, omi) instruction try/catch. Je ne suis pas sûr si cela est approuvé façon de faire les choses, mais il fait sens pour moi.

2voto

Cris Points 1

Jusqu'à présent, j'ai utilisé le code ci-dessous extrait de cet article et réussit à la version du code et nom de la version d' AndroidManifest.xml

/* Get android:versionName */
String versionName = getPackageManager().getPackageInfo(getPackageName(), 0).versionName;

/* Get android:versionCode */
int versionCode = getPackageManager().getPackageInfo(getPackageName(), 0).versionCode;

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