From a36d03d9dbe13acfbabc4963515d1f3a546c0c6e Mon Sep 17 00:00:00 2001 From: Aleksey Belouosv Date: Fri, 28 Sep 2018 17:40:47 +0300 Subject: [PATCH] [iOS] disable third party tracking sdk when "Limit ad tracking" option checked --- iphone/Maps/Classes/MapsAppDelegate.mm | 3 +++ iphone/Maps/Common/Statistics/Statistics.mm | 24 ++++++++++++--------- 2 files changed, 17 insertions(+), 10 deletions(-) diff --git a/iphone/Maps/Classes/MapsAppDelegate.mm b/iphone/Maps/Classes/MapsAppDelegate.mm index 0d9218ed2f..9561f77fa2 100644 --- a/iphone/Maps/Classes/MapsAppDelegate.mm +++ b/iphone/Maps/Classes/MapsAppDelegate.mm @@ -1011,6 +1011,9 @@ didReceiveNotificationResponse:(UNNotificationResponse *)response - (MWMMyTarget *)myTarget { + if (![ASIdentifierManager sharedManager].advertisingTrackingEnabled) + return nil; + if (!_myTarget) _myTarget = [[MWMMyTarget alloc] init]; return _myTarget; diff --git a/iphone/Maps/Common/Statistics/Statistics.mm b/iphone/Maps/Common/Statistics/Statistics.mm index fd5d6c31d2..75c3935d8d 100644 --- a/iphone/Maps/Common/Statistics/Statistics.mm +++ b/iphone/Maps/Common/Statistics/Statistics.mm @@ -8,6 +8,7 @@ #import #import #import +#import #include "platform/platform.hpp" #include "platform/settings.hpp" @@ -39,17 +40,20 @@ void checkFlurryLogStatus(FlurryEventRecordStatus status) // _enabled should be already correctly set up in init method. if ([MWMSettings statisticsEnabled]) { - auto sessionBuilder = [[[FlurrySessionBuilder alloc] init] - withAppVersion:[AppInfo sharedInfo].bundleVersion]; - [Flurry startSession:@(FLURRY_KEY) withSessionBuilder:sessionBuilder]; - [Flurry logAllPageViewsForTarget:application.windows.firstObject.rootViewController]; + if ([ASIdentifierManager sharedManager].advertisingTrackingEnabled) + { + auto sessionBuilder = [[[FlurrySessionBuilder alloc] init] + withAppVersion:[AppInfo sharedInfo].bundleVersion]; + [Flurry startSession:@(FLURRY_KEY) withSessionBuilder:sessionBuilder]; + [Flurry logAllPageViewsForTarget:application.windows.firstObject.rootViewController]; - [MRMyTracker createTracker:@(MY_TRACKER_KEY)]; -#ifdef DEBUG - [MRMyTracker setDebugMode:YES]; -#endif - [MRMyTracker trackerParams].trackLaunch = YES; - [MRMyTracker setupTracker]; + [MRMyTracker createTracker:@(MY_TRACKER_KEY)]; + #ifdef DEBUG + [MRMyTracker setDebugMode:YES]; + #endif + [MRMyTracker trackerParams].trackLaunch = YES; + [MRMyTracker setupTracker]; + } [Alohalytics setup:@(ALOHALYTICS_URL) withLaunchOptions:launchOptions]; }