3

How to get Version from AndroidManifest.xml in a Library Project? Because there, I then don't have any activity in it.

1
  • I've linked two duplicates, depending on whether you mean the app's version number or the library's version number. Commented Feb 25, 2023 at 3:56

2 Answers 2

1
PackageManager m = getPackageManager(); String app_ver = ""; try { app_ver = m.getPackageInfo(this.getPackageName(), 0).versionName; } catch (NameNotFoundException e) { // Exception won't be thrown as the current package name is // safe to exist on the system. throw new AssertionError(); } 
Sign up to request clarification or add additional context in comments.

3 Comments

which class "this" should extends? this is a simple manager which is supposed to return the version of the app.
So, my class now extends ContextWrapper in order to be able to get "getPackagemanager()". thx for the tip.
How does this work for a standalone library, which doesn't have any context of its own, but has its own version code in its Android Manifest.
1

If you want the specific version of the library (and not the app using that library), use:

BuildConfig.VERSION_NAME BuildConfig.VERSION_CODE 

Just make sure that you import the BuildConfig for your library (as literally every android library/app has it's own BuildConfig on it's package path). The Android Studio's Gradle Build system indicates that this is always generated as of version 0.7.0 (see changelog). This persists as a generated class into the hosting app/library.

Comments

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.