[alohalytics][ios] Minor renaming.

This commit is contained in:
Alex Zolotarev 2015-09-01 14:17:13 -07:00
parent 755f6ef5c9
commit 28c48b0541

View file

@ -206,15 +206,15 @@ static void LogSystemInformation(NSString * userAgent) {
// Returns <unique id, true if it's the very-first app launch>.
static std::pair<std::string, bool> InstallationId() {
bool firstLaunch = false;
NSUserDefaults * userDataBase = [NSUserDefaults standardUserDefaults];
NSString * installationId = [userDataBase objectForKey:@"AlohalyticsInstallationId"];
NSUserDefaults * ud = [NSUserDefaults standardUserDefaults];
NSString * installationId = [ud objectForKey:@"AlohalyticsInstallationId"];
if (installationId == nil) {
CFUUIDRef uuid = CFUUIDCreate(kCFAllocatorDefault);
// All iOS IDs start with I:
installationId = [@"I:" stringByAppendingString:(NSString *)CFBridgingRelease(CFUUIDCreateString(kCFAllocatorDefault, uuid))];
CFRelease(uuid);
[userDataBase setValue:installationId forKey:@"AlohalyticsInstallationId"];
[userDataBase synchronize];
[ud setValue:installationId forKey:@"AlohalyticsInstallationId"];
[ud synchronize];
firstLaunch = true;
}
return std::make_pair([installationId UTF8String], firstLaunch);
@ -370,31 +370,32 @@ static BOOL gIsFirstSession = NO;
.SetServerUrl([serverUrl UTF8String])
.SetStoragePath(StoragePath());
NSUserDefaults * ud = [NSUserDefaults standardUserDefaults];
// Calculate some basic statistics about installations/updates/launches.
NSUserDefaults * userDataBase = [NSUserDefaults standardUserDefaults];
NSString * installedVersion = [userDataBase objectForKey:kInstalledVersionKey];
NSString * installedVersion = [ud objectForKey:kInstalledVersionKey];
BOOL shouldSendUpdatedSystemInformation = NO;
// Do not generate $install event for old users who did not have Alohalytics installed but already used the app.
const BOOL appWasNeverInstalledAndLaunchedBefore = (NSOrderedAscending == [[Alohalytics buildDate] compare:[Alohalytics installDate]]);
if (installationId.second && appWasNeverInstalledAndLaunchedBefore && installedVersion == nil) {
gIsFirstSession = YES;
instance.LogEvent("$install", [Alohalytics bundleInformation:version]);
[userDataBase setValue:version forKey:kInstalledVersionKey];
[ud setValue:version forKey:kInstalledVersionKey];
// Also store first launch date for future use.
if (nil == [userDataBase objectForKey:kFirstLaunchDateKey]) {
[userDataBase setObject:[NSDate date] forKey:kFirstLaunchDateKey];
if (nil == [ud objectForKey:kFirstLaunchDateKey]) {
[ud setObject:[NSDate date] forKey:kFirstLaunchDateKey];
}
[userDataBase synchronize];
[ud synchronize];
shouldSendUpdatedSystemInformation = YES;
} else {
if (installedVersion == nil || ![installedVersion isEqualToString:version]) {
instance.LogEvent("$update", [Alohalytics bundleInformation:version]);
[userDataBase setValue:version forKey:kInstalledVersionKey];
[ud setValue:version forKey:kInstalledVersionKey];
// Also store first launch date for future use, if Alohalytics was integrated only in this update.
if (nil == [userDataBase objectForKey:kFirstLaunchDateKey]) {
[userDataBase setObject:[NSDate date] forKey:kFirstLaunchDateKey];
if (nil == [ud objectForKey:kFirstLaunchDateKey]) {
[ud setObject:[NSDate date] forKey:kFirstLaunchDateKey];
}
[userDataBase synchronize];
[ud synchronize];
shouldSendUpdatedSystemInformation = YES;
}
}
@ -474,10 +475,10 @@ static BOOL gIsFirstSession = NO;
gSessionStartTime = nil;
Stats & instance = Stats::Instance();
instance.LogEvent("$applicationWillResignActive", std::to_string(seconds));
NSUserDefaults * defaults = [NSUserDefaults standardUserDefaults];
seconds += [defaults integerForKey:kTotalSecondsInTheApp];
[defaults setInteger:seconds forKey:kTotalSecondsInTheApp];
[defaults synchronize];
NSUserDefaults * ud = [NSUserDefaults standardUserDefaults];
seconds += [ud integerForKey:kTotalSecondsInTheApp];
[ud setInteger:seconds forKey:kTotalSecondsInTheApp];
[ud synchronize];
if (instance.DebugMode()) {
ALOG("Total seconds spent in the app:", seconds);
}
@ -524,13 +525,13 @@ static BOOL gIsFirstSession = NO;
}
+ (NSDate *)firstLaunchDate {
NSUserDefaults * defaults = [NSUserDefaults standardUserDefaults];
NSDate * date = [defaults objectForKey:kFirstLaunchDateKey];
NSUserDefaults * ud = [NSUserDefaults standardUserDefaults];
NSDate * date = [ud objectForKey:kFirstLaunchDateKey];
if (!date) {
// Non-standard situation: this method is called before calling setup. Return current date.
date = [NSDate date];
[defaults setObject:date forKey:kFirstLaunchDateKey];
[defaults synchronize];
[ud setObject:date forKey:kFirstLaunchDateKey];
[ud synchronize];
}
return date;
}