Track which versions of your iOS or Mac OS X app a user has previously installed.
Call this on each app launch inside application:didFinishLaunching:withOptions:
(iOS), or -applicationDidFinishLaunching:
(OS X)
[GBVersionTracking track];
Then call these whenever you want (in these examples the user has launched a bunch of previous versions, and this is the first time he's launched the new version which is version 3.0):
[GBVersionTracking isFirstLaunchEver]; //Returns: NO
[GBVersionTracking isFirstLaunchForVersion]; //Returns: YES
[GBVersionTracking isFirstLaunchForBuild]; //Returns: YES
[GBVersionTracking currentVersion]; //Returns: @"3.0"
[GBVersionTracking previousVersion]; //Returns: @"2.1"
[GBVersionTracking firstInstalledVersion]; //Returns: @"1.0"
[GBVersionTracking versionHistory]; //Returns: [@"1.0", @"2.0", @"2.1", @"3.0"]
[GBVersionTracking currentBuild]; //Returns: @"3004"
[GBVersionTracking previousBuild]; //Returns: @"2107"
[GBVersionTracking firstInstalledBuild]; //Returns: @"1000"
[GBVersionTracking buildHistory]; //Returns: [@"1000", @"2043", @"2107", @"3004"]
N.B.: The build and version numbers are whatever you define in your app's Info.plist
Don't forget to import header:
#import <GBVersionTracking/GBVersionTracking.h>
Use CocoaPods, add this to your project's Podfile and run pod install
:
pod 'GBVersionTracking'
Copyright 2015 Luka Mirosevic
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this work except in compliance with the License. You may obtain a copy of the License in the LICENSE file, or at:
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.