If you always did what you suggested, save the application version to NSUserDefaults .
And about your other case, if the application does not start with version 1, then it does with version 2, you can just see it as a new installation.
Since your application never started in the first place, you can simply consider it as a new installation. If you do this to keep track of updates in some kind of analytic tool, you will have a problem. But you can use Apple's install and update reports to get the right install and update list.
Just make sure that if you make any updates from any version, you make the code so that you can upgrade from any previous version. Thus, installing verion 4 of 1 will transform any changes for versions 2 and 3.
source share