15

I am trying to release an update of an existing Android application.

What is the correct way of versioning an Android application?

Here Developer guide I found that format may be <major>.<minor>.<point>.

Can someone please explain me what each of major, minor and point mean?

Trinimon
  • 13,839
  • 9
  • 44
  • 60
Rage
  • 191
  • 1
  • 3
  • 10

4 Answers4

14

androidVersionCode is an integer that you increase with each update. So the first version could be 1, the next update could be 2, etc.

androidVersionName is just a string value that you decide - it's displayed on Google Play.

The documentation refers to <major>.<minor>.<point> as a suggested format for the versionName, e.g. version 1.1.1 or 2.0.4. It's up to you, but there's a good explanation here.

Community
  • 1
  • 1
ashatte
  • 5,442
  • 8
  • 39
  • 50
  • You would increase if your update included a bug fix or something simple. It would imply that no major features have changed in that update, yet it is still a newer version, hence an increased version number. – ashatte Sep 24 '13 at 06:09
  • Thank you :) This is what i was expecting for :) sorry for asking again about because i didn't see the link you had given :) – Rage Sep 24 '13 at 06:24
2

As long as you update android:versionCode each time, it doesn't really matter what you put into android:versionName. It can be three different numbers or any other string, e.g. "1.0.0", "a", or "best release ever".

This is a general discussion of Software Versioning from Wikipedia.

Szymon
  • 42,577
  • 16
  • 96
  • 114
2

Given a version number MAJOR.MINOR.PATCH, increment the:

  • MAJOR version when you make incompatible API changes,
  • MINOR version when you add functionality in a backwards-compatible manner, and
  • PATCH version when you make backwards-compatible bug fixes.

I wrote a post about versioning android apps: https://blog.dipien.com/versioning-android-apps-d6ec171cfd82

Maxi Rosson
  • 101
  • 5
1

The version code is an integer and must be strictly increasing with each new version.

The version name is totally up to you. A scheme that is often used is x.y where x is incremented for really big changes (maybe even introducing incompatibilities with previous versions), while y is incremented for minor changes.

Henry
  • 42,982
  • 7
  • 68
  • 84