diff --git a/iphone/Maps/Classes/MapsAppDelegate.mm b/iphone/Maps/Classes/MapsAppDelegate.mm index ec1d7d43be..5df3526ea0 100644 --- a/iphone/Maps/Classes/MapsAppDelegate.mm +++ b/iphone/Maps/Classes/MapsAppDelegate.mm @@ -9,6 +9,7 @@ #import "Preferences.h" #import "RouteState.h" #import "Statistics.h" +#import #import #import #import @@ -158,8 +159,7 @@ void InitLocalizedStrings() - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions { // Initialize all 3party engines. - BOOL returnValue = [[Statistics instance] application:application - didFinishLaunchingWithOptions:launchOptions]; + BOOL returnValue = [self initStatistics:application didFinishLaunchingWithOptions:launchOptions]; NSURL * urlUsedToLaunchMaps = launchOptions[UIApplicationLaunchOptionsURLKey]; if (urlUsedToLaunchMaps != nil) @@ -167,12 +167,10 @@ void InitLocalizedStrings() else returnValue = YES; - [HttpThread setDownloadIndicatorProtocol:[MapsAppDelegate theApp]]; + [HttpThread setDownloadIndicatorProtocol:self]; [self trackWatchUser]; - [[Statistics instance] logEvent:@"Device Info" withParameters:@{@"Country" : [AppInfo sharedInfo].countryCode}]; - InitLocalizedStrings(); [self.mapViewController onEnterForeground]; @@ -310,6 +308,31 @@ void InitLocalizedStrings() DeleteFramework(); } +- (BOOL)initStatistics:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions +{ + Statistics * statistics = [Statistics instance]; + BOOL returnValue = [statistics application:application didFinishLaunchingWithOptions:launchOptions]; + [statistics logEvent:@"Device Info" withParameters:@{@"Country" : [AppInfo sharedInfo].countryCode}]; + + NSString * connectionType; + switch (Platform::ConnectionStatus()) + { + case Platform::EConnectionType::CONNECTION_NONE: + break; + case Platform::EConnectionType::CONNECTION_WIFI: + connectionType = @"Wi-Fi"; + break; + case Platform::EConnectionType::CONNECTION_WWAN: + connectionType = [[CTTelephonyNetworkInfo alloc] init].currentRadioAccessTechnology; + break; + } + if (!connectionType) + connectionType = @"Offline"; + [statistics logEvent:@"Connection" withParameters:@{@"Type" : connectionType}]; + + return returnValue; +} + - (void)disableDownloadIndicator { --m_activeDownloadsCounter;