diff --git a/iphone/Maps/Maps.xcodeproj/project.pbxproj b/iphone/Maps/Maps.xcodeproj/project.pbxproj index 1b352cbfb4..5b51b21a9a 100644 --- a/iphone/Maps/Maps.xcodeproj/project.pbxproj +++ b/iphone/Maps/Maps.xcodeproj/project.pbxproj @@ -35,16 +35,6 @@ 97508420199501F100A7457D /* ImageDownloader.m in Sources */ = {isa = PBXBuildFile; fileRef = 9750841E199501F100A7457D /* ImageDownloader.m */; }; 97508423199522D300A7457D /* SettingsAndMoreVC.mm in Sources */ = {isa = PBXBuildFile; fileRef = 97508422199522D300A7457D /* SettingsAndMoreVC.mm */; }; 97508424199522D300A7457D /* SettingsAndMoreVC.mm in Sources */ = {isa = PBXBuildFile; fileRef = 97508422199522D300A7457D /* SettingsAndMoreVC.mm */; }; - 9767700F19B5BE1600402693 /* libz.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = 9767700E19B5BE1600402693 /* libz.dylib */; }; - 9767701119B5BE2200402693 /* libsqlite3.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = 9767701019B5BE2200402693 /* libsqlite3.dylib */; }; - 9767701219B5BE3800402693 /* libz.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = 9767700E19B5BE1600402693 /* libz.dylib */; }; - 9767701319B5BE3E00402693 /* libsqlite3.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = 9767701019B5BE2200402693 /* libsqlite3.dylib */; }; - 9767702019B718D700402693 /* iOSa_2.60.0.version in Resources */ = {isa = PBXBuildFile; fileRef = 9767701B19B718D700402693 /* iOSa_2.60.0.version */; }; - 9767702119B718D700402693 /* iOSa_2.60.0.version in Resources */ = {isa = PBXBuildFile; fileRef = 9767701B19B718D700402693 /* iOSa_2.60.0.version */; }; - 9767702219B718D700402693 /* libLocalyticsAMP.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 9767701C19B718D700402693 /* libLocalyticsAMP.a */; }; - 9767702319B718D700402693 /* libLocalyticsAMP.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 9767701C19B718D700402693 /* libLocalyticsAMP.a */; }; - 9767702419B718D800402693 /* LICENSE in Resources */ = {isa = PBXBuildFile; fileRef = 9767701D19B718D700402693 /* LICENSE */; }; - 9767702519B718D800402693 /* LICENSE in Resources */ = {isa = PBXBuildFile; fileRef = 9767701D19B718D700402693 /* LICENSE */; }; 9769D6EF1912BF3000CA6158 /* ContainerView.mm in Sources */ = {isa = PBXBuildFile; fileRef = 9769D6EE1912BF3000CA6158 /* ContainerView.mm */; }; 9769D6F01912BF3000CA6158 /* ContainerView.mm in Sources */ = {isa = PBXBuildFile; fileRef = 9769D6EE1912BF3000CA6158 /* ContainerView.mm */; }; 976D86EC19C8697700C920EF /* ProgressView.m in Sources */ = {isa = PBXBuildFile; fileRef = 976D86EB19C8697700C920EF /* ProgressView.m */; }; @@ -1366,13 +1356,6 @@ 9750841E199501F100A7457D /* ImageDownloader.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ImageDownloader.m; sourceTree = ""; }; 97508421199522D300A7457D /* SettingsAndMoreVC.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SettingsAndMoreVC.h; sourceTree = ""; }; 97508422199522D300A7457D /* SettingsAndMoreVC.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = SettingsAndMoreVC.mm; sourceTree = ""; }; - 9767700E19B5BE1600402693 /* libz.dylib */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.dylib"; name = libz.dylib; path = usr/lib/libz.dylib; sourceTree = SDKROOT; }; - 9767701019B5BE2200402693 /* libsqlite3.dylib */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.dylib"; name = libsqlite3.dylib; path = usr/lib/libsqlite3.dylib; sourceTree = SDKROOT; }; - 9767701B19B718D700402693 /* iOSa_2.60.0.version */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = iOSa_2.60.0.version; sourceTree = ""; }; - 9767701C19B718D700402693 /* libLocalyticsAMP.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; path = libLocalyticsAMP.a; sourceTree = ""; }; - 9767701D19B718D700402693 /* LICENSE */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = LICENSE; sourceTree = ""; }; - 9767701E19B718D700402693 /* LocalyticsAmpSession.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LocalyticsAmpSession.h; sourceTree = ""; }; - 9767701F19B718D700402693 /* LocalyticsSession.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LocalyticsSession.h; sourceTree = ""; }; 9769D6ED1912BF3000CA6158 /* ContainerView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ContainerView.h; sourceTree = ""; }; 9769D6EE1912BF3000CA6158 /* ContainerView.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = ContainerView.mm; sourceTree = ""; }; 976D86EA19C8697700C920EF /* ProgressView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = ProgressView.h; path = Classes/ProgressView.h; sourceTree = ""; }; @@ -2137,8 +2120,6 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - 9767701119B5BE2200402693 /* libsqlite3.dylib in Frameworks */, - 9767700F19B5BE1600402693 /* libz.dylib in Frameworks */, 97D807BE18A93C8800D416E0 /* iAd.framework in Frameworks */, 97719D491843B6F700BDD815 /* Security.framework in Frameworks */, 97719D451843B6DC00BDD815 /* MessageUI.framework in Frameworks */, @@ -2156,7 +2137,6 @@ 974386D91934CBAC00FD5659 /* FacebookSDK.framework in Frameworks */, 97DD585C18A8EB130079837E /* libFlurry_5.4.0.a in Frameworks */, FA87151B12B1518F00592DAF /* SystemConfiguration.framework in Frameworks */, - 9767702219B718D700402693 /* libLocalyticsAMP.a in Frameworks */, 97DD585818A8EB060079837E /* MobileAppTracker.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; @@ -2165,8 +2145,6 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - 9767701319B5BE3E00402693 /* libsqlite3.dylib in Frameworks */, - 9767701219B5BE3800402693 /* libz.dylib in Frameworks */, 97EDDCE518A299C000AEFB7A /* Twitter.framework in Frameworks */, 972CDCC61887F1B7006641CA /* CFNetwork.framework in Frameworks */, 97C98656186C734000AF7E9E /* AVFoundation.framework in Frameworks */, @@ -2189,7 +2167,6 @@ FAFB08FE151215EE0041901D /* CoreGraphics.framework in Frameworks */, FAFB08FF151215EE0041901D /* OpenGLES.framework in Frameworks */, FAFB0900151215EE0041901D /* QuartzCore.framework in Frameworks */, - 9767702319B718D700402693 /* libLocalyticsAMP.a in Frameworks */, FAFB0901151215EE0041901D /* CoreLocation.framework in Frameworks */, 97DD585918A8EB060079837E /* MobileAppTracker.framework in Frameworks */, FAFB0909151215EE0041901D /* SystemConfiguration.framework in Frameworks */, @@ -2290,8 +2267,6 @@ 29B97323FDCFA39411CA2CEA /* Frameworks */ = { isa = PBXGroup; children = ( - 9767701019B5BE2200402693 /* libsqlite3.dylib */, - 9767700E19B5BE1600402693 /* libz.dylib */, FAA0F162196AC14100E01C3F /* librouting.a */, 974386D81934CBAC00FD5659 /* FacebookSDK.framework */, 97EDDCE418A299C000AEFB7A /* Twitter.framework */, @@ -2343,18 +2318,6 @@ name = Categories; sourceTree = ""; }; - 9767701A19B718D700402693 /* Localitycs */ = { - isa = PBXGroup; - children = ( - 9767701B19B718D700402693 /* iOSa_2.60.0.version */, - 9767701C19B718D700402693 /* libLocalyticsAMP.a */, - 9767701D19B718D700402693 /* LICENSE */, - 9767701E19B718D700402693 /* LocalyticsAmpSession.h */, - 9767701F19B718D700402693 /* LocalyticsSession.h */, - ); - path = Localitycs; - sourceTree = ""; - }; 976D86EE19C8777500C920EF /* Downloader */ = { isa = PBXGroup; children = ( @@ -2511,7 +2474,6 @@ CB252D6816FF82C8001E41E9 /* Statistics */ = { isa = PBXGroup; children = ( - 9767701A19B718D700402693 /* Localitycs */, 97C98521186AE3CF00AF7E9E /* AppInfo.h */, 97C98520186AE3CF00AF7E9E /* AppInfo.mm */, 97C9851D186AE3C500AF7E9E /* Reachability.h */, @@ -3530,7 +3492,6 @@ FAF800EC1417D7E50024E8C1 /* ph.png in Resources */, FAF800ED1417D7E50024E8C1 /* pk.png in Resources */, FAF800EE1417D7E50024E8C1 /* pl.png in Resources */, - 9767702019B718D700402693 /* iOSa_2.60.0.version in Resources */, FAF800EF1417D7E50024E8C1 /* pm.png in Resources */, FAF800F01417D7E50024E8C1 /* pn.png in Resources */, FAF800F11417D7E50024E8C1 /* pr.png in Resources */, @@ -3611,7 +3572,6 @@ FAF804351417E3510024E8C1 /* ae@2x.png in Resources */, FAF804361417E3510024E8C1 /* af@2x.png in Resources */, FAF804371417E3510024E8C1 /* ag@2x.png in Resources */, - 9767702419B718D800402693 /* LICENSE in Resources */, FAF804381417E3510024E8C1 /* ai@2x.png in Resources */, FAF804391417E3510024E8C1 /* al@2x.png in Resources */, FAF8043A1417E3510024E8C1 /* am@2x.png in Resources */, @@ -3958,7 +3918,6 @@ FAFB06ED151215EE0041901D /* bj.png in Resources */, FAFB06EE151215EE0041901D /* bl.png in Resources */, FAFB06EF151215EE0041901D /* bm.png in Resources */, - 9767702519B718D800402693 /* LICENSE in Resources */, FAFB06F0151215EE0041901D /* bn.png in Resources */, FAFB06F1151215EE0041901D /* bo.png in Resources */, FAFB06F2151215EE0041901D /* br.png in Resources */, @@ -3986,7 +3945,6 @@ FAFB0708151215EE0041901D /* cw.png in Resources */, FAFB0709151215EE0041901D /* cx.png in Resources */, FAFB070A151215EE0041901D /* cy.png in Resources */, - 9767702119B718D700402693 /* iOSa_2.60.0.version in Resources */, FAFB070B151215EE0041901D /* cz.png in Resources */, FAFB070C151215EE0041901D /* de.png in Resources */, FAFB070D151215EE0041901D /* dj.png in Resources */, @@ -4709,7 +4667,6 @@ "$(inherited)", "${SRCROOT}/Statistics", "${SRCROOT}", - "$(PROJECT_DIR)/Statistics/Localitycs", ); PROVISIONING_PROFILE = ""; }; @@ -4869,7 +4826,6 @@ "$(inherited)", "${SRCROOT}/Statistics", "${SRCROOT}", - "$(PROJECT_DIR)/Statistics/Localitycs", ); PROVISIONING_PROFILE = ""; }; @@ -4960,7 +4916,6 @@ "$(inherited)", "${SRCROOT}/Statistics", "${SRCROOT}", - "$(PROJECT_DIR)/Statistics/Localitycs", ); PROVISIONING_PROFILE = ""; }; @@ -5055,7 +5010,6 @@ "$(inherited)", "${SRCROOT}/Statistics", "${SRCROOT}", - "$(PROJECT_DIR)/Statistics/Localitycs", ); PROVISIONING_PROFILE = ""; }; @@ -5145,7 +5099,6 @@ "$(inherited)", "${SRCROOT}/Statistics", "${SRCROOT}", - "$(PROJECT_DIR)/Statistics/Localitycs", ); PROVISIONING_PROFILE = ""; }; @@ -5236,7 +5189,6 @@ "$(inherited)", "${SRCROOT}/Statistics", "${SRCROOT}", - "$(PROJECT_DIR)/Statistics/Localitycs", ); PROVISIONING_PROFILE = ""; }; @@ -5331,7 +5283,6 @@ "$(inherited)", "${SRCROOT}/Statistics", "${SRCROOT}", - "$(PROJECT_DIR)/Statistics/Localitycs", ); PROVISIONING_PROFILE = ""; }; @@ -5426,7 +5377,6 @@ "$(inherited)", "${SRCROOT}/Statistics", "${SRCROOT}", - "$(PROJECT_DIR)/Statistics/Localitycs", ); PROVISIONING_PROFILE = ""; }; @@ -5520,7 +5470,6 @@ "$(inherited)", "${SRCROOT}/Statistics", "${SRCROOT}", - "$(PROJECT_DIR)/Statistics/Localitycs", ); PROVISIONING_PROFILE = ""; }; @@ -5614,7 +5563,6 @@ "$(inherited)", "${SRCROOT}/Statistics", "${SRCROOT}", - "$(PROJECT_DIR)/Statistics/Localitycs", ); PROVISIONING_PROFILE = ""; }; @@ -5707,7 +5655,6 @@ "$(inherited)", "${SRCROOT}/Statistics", "${SRCROOT}", - "$(PROJECT_DIR)/Statistics/Localitycs", ); PROVISIONING_PROFILE = ""; }; @@ -5732,7 +5679,6 @@ "$(inherited)", "${SRCROOT}/Statistics", "${SRCROOT}", - "$(PROJECT_DIR)/Statistics/Localitycs", ); PROVISIONING_PROFILE = ""; }; @@ -5757,7 +5703,6 @@ "$(inherited)", "${SRCROOT}/Statistics", "${SRCROOT}", - "$(PROJECT_DIR)/Statistics/Localitycs", ); PROVISIONING_PROFILE = ""; }; @@ -5782,7 +5727,6 @@ "$(inherited)", "${SRCROOT}/Statistics", "${SRCROOT}", - "$(PROJECT_DIR)/Statistics/Localitycs", ); PROVISIONING_PROFILE = ""; }; @@ -5807,7 +5751,6 @@ "$(inherited)", "${SRCROOT}/Statistics", "${SRCROOT}", - "$(PROJECT_DIR)/Statistics/Localitycs", ); PROVISIONING_PROFILE = ""; }; @@ -5832,7 +5775,6 @@ "$(inherited)", "${SRCROOT}/Statistics", "${SRCROOT}", - "$(PROJECT_DIR)/Statistics/Localitycs", ); PROVISIONING_PROFILE = ""; }; @@ -5857,7 +5799,6 @@ "$(inherited)", "${SRCROOT}/Statistics", "${SRCROOT}", - "$(PROJECT_DIR)/Statistics/Localitycs", ); PROVISIONING_PROFILE = ""; }; @@ -5882,7 +5823,6 @@ "$(inherited)", "${SRCROOT}/Statistics", "${SRCROOT}", - "$(PROJECT_DIR)/Statistics/Localitycs", ); PROVISIONING_PROFILE = ""; }; @@ -5907,7 +5847,6 @@ "$(inherited)", "${SRCROOT}/Statistics", "${SRCROOT}", - "$(PROJECT_DIR)/Statistics/Localitycs", ); PROVISIONING_PROFILE = ""; }; @@ -5932,7 +5871,6 @@ "$(inherited)", "${SRCROOT}/Statistics", "${SRCROOT}", - "$(PROJECT_DIR)/Statistics/Localitycs", ); PROVISIONING_PROFILE = ""; }; @@ -5957,7 +5895,6 @@ "$(inherited)", "${SRCROOT}/Statistics", "${SRCROOT}", - "$(PROJECT_DIR)/Statistics/Localitycs", ); PROVISIONING_PROFILE = ""; }; @@ -5982,7 +5919,6 @@ "$(inherited)", "${SRCROOT}/Statistics", "${SRCROOT}", - "$(PROJECT_DIR)/Statistics/Localitycs", ); PROVISIONING_PROFILE = ""; }; diff --git a/iphone/Maps/MapsWithMe-Lite.plist b/iphone/Maps/MapsWithMe-Lite.plist index 178c14f4e3..4ed79d16f5 100644 --- a/iphone/Maps/MapsWithMe-Lite.plist +++ b/iphone/Maps/MapsWithMe-Lite.plist @@ -53,8 +53,6 @@ 14130 MobileAppTrackerConversionKey ***REMOVED*** - LocalyticsKey - 6cb45a0efb680ff69c98159-6a322566-3282-11e4-a0d7-005cf8cbabd8 NSMainNibFile MainWindow NSMainNibFile~ipad diff --git a/iphone/Maps/MapsWithMe-Pro.plist b/iphone/Maps/MapsWithMe-Pro.plist index c039812ea0..427b86f86b 100644 --- a/iphone/Maps/MapsWithMe-Pro.plist +++ b/iphone/Maps/MapsWithMe-Pro.plist @@ -86,8 +86,6 @@ 14130 MobileAppTrackerConversionKey ***REMOVED*** - LocalyticsKey - 3af7c0176890d2106a45aae-100ae848-327e-11e4-a0d9-005cf8cbabd8 NSMainNibFile MainWindow NSMainNibFile~ipad diff --git a/iphone/Maps/Statistics/Localitycs/LICENSE b/iphone/Maps/Statistics/Localitycs/LICENSE deleted file mode 100755 index 197e30a6ef..0000000000 --- a/iphone/Maps/Statistics/Localitycs/LICENSE +++ /dev/null @@ -1,21 +0,0 @@ -Copyright (c) 2013, Char Software, Inc. d/b/a Localytics -All rights reserved. - -Redistribution and use in source and binary forms, with or without -modification, are permitted provided that the following conditions are met: - * Redistributions of source code must retain the above copyright - notice, this list of conditions and the following disclaimer. - * Neither the name of Char Software, Inc., Localytics nor the names of its - contributors may be used to endorse or promote products derived from this - software without specific prior written permission. - -THIS SOFTWARE IS PROVIDED BY CHAR SOFTWARE, INC. D/B/A LOCALYTICS ''AS IS'' AND -ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED -WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE -DISCLAIMED. IN NO EVENT SHALL CHAR SOFTWARE, INC. D/B/A LOCALYTICS BE LIABLE -FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL -DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR -SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER -CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, -OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. diff --git a/iphone/Maps/Statistics/Localitycs/LocalyticsAmpSession.h b/iphone/Maps/Statistics/Localitycs/LocalyticsAmpSession.h deleted file mode 100644 index 4b4557109b..0000000000 --- a/iphone/Maps/Statistics/Localitycs/LocalyticsAmpSession.h +++ /dev/null @@ -1,71 +0,0 @@ -// -// LocalyticsAmpSession.h -// Copyright (C) 2013 Char Software Inc., DBA Localytics -// -// This code is provided under the Localytics Modified BSD License. -// A copy of this license has been distributed in a file called LICENSE -// with this source code. -// -// Please visit www.localytics.com for more information. - -#import "LocalyticsSession.h" - -@protocol LocalyticsAmpSessionDelegate; - -@interface LocalyticsAmpSession : LocalyticsSession - -/*! -@property displayButtonOnLeft -@abstract Determines whether the dismiss button is shown on the left corner instead of the right - Default value is true. -*/ -@property (assign) BOOL displayButtonOnLeft; - -/*! - @property testModeEnabled - @abstract Determines whether SDK is in test mode - */ -@property (assign) BOOL testModeEnabled; - -/*! - @property delegate - @abstract Reference to an object that conforms to the LocalyticsSessionDelegate protocol. - */ -@property (nonatomic, assign) idampDelegate; - -/*! - @property dismissButtonImage - @abstract Image to use for the dismiss button (instead of the default). - */ -@property (nonatomic, readonly) UIImage* dismissButtonImage; - -#pragma mark Public Methods -/*! - @method shared - @abstract Accesses the Session object. This is a Singleton class which maintains - a single session throughout your application. It is possible to manage your own - session, but this is the easiest way to access the Localytics object throughout your code. - The class is accessed within the code using the following syntax: - [[LocalyticsSession shared] functionHere] - This is a AMP specific function designed to return the localytics session object as an AMP - session object, rather than as its super class, the base LocalyticsSession - */ -+ (LocalyticsAmpSession *)shared; -- (BOOL)handleURL:(NSURL *)url; -- (void)ampTrigger:(NSString *)event; -- (void)ampTrigger:(NSString *)event attributes:(NSDictionary *)attributes; -- (void)ampTrigger:(NSString *)event attributes:(NSDictionary *)attributes reportAttributes:(NSDictionary *)reportAttributes; - -- (void)setDismissButtonImageWithName:(NSString *)imageName; -- (void)setDismissButtonImageWithImage:(UIImage *)image; -@end - -@protocol LocalyticsAmpSessionDelegate -@optional - -- (void)localyticsWillDisplayAMPMessage; -- (void)localyticsDidDisplayAMPMessage; -- (void)localyticsWillHideAMPMessage; -- (void)localyticsDidHideAMPMessage; - -@end diff --git a/iphone/Maps/Statistics/Localitycs/LocalyticsSession.h b/iphone/Maps/Statistics/Localitycs/LocalyticsSession.h deleted file mode 100644 index 1905db8e7a..0000000000 --- a/iphone/Maps/Statistics/Localitycs/LocalyticsSession.h +++ /dev/null @@ -1,408 +0,0 @@ -// LocalyticsSession.h -// Copyright (C) 2013 Char Software Inc., DBA Localytics -// -// This code is provided under the Localytics Modified BSD License. -// A copy of this license has been distributed in a file called LICENSE -// with this source code. -// -// Please visit www.localytics.com for more information. - -#import -#import - -#define CLIENT_VERSION @"2.60.0" -#define MARKETING_PLATFORM - -/*! - @class LocalyticsSession - @discussion The class which manages creating, collecting, & uploading a Localytics session. - Please see the following guides for information on how to best use this - library, sample code, and other useful information: - - - Best Practices -
    -
  • Instantiate the LocalyticsSession object in applicationDidFinishLaunching.
  • -
  • Open your session and begin your uploads in applicationDidFinishLaunching. This way the - upload has time to complete and it all happens before your users have a - chance to begin any data intensive actions of their own.
  • -
  • Close the session in applicationWillTerminate, and in applicationDidEnterBackground.
  • -
  • Resume the session in applicationWillEnterForeground.
  • -
  • Do not call any Localytics functions inside a loop. Instead, calls - such as tagEvent should follow user actions. This limits the - amount of data which is stored and uploaded.
  • -
  • Do not use multiple LocalticsSession objects to upload data with - multiple application keys. This can cause invalid state.
  • -
- - @author Localytics - */ - -// Forward declaration -@protocol LocalyticsSessionDelegate; - -@interface LocalyticsSession : NSObject - -//************************************************************************************************// -#pragma mark - Singleton Accessors -/*! - @method shared - @abstract Accesses the Session object. This is a Singleton class which maintains - a single session throughout your application. It is possible to manage your own - session, but this is the easiest way to access the Localytics object throughout your code. - The class is accessed within the code using the following syntax: - [[LocalyticsSession shared] functionHere] - So, to tag an event, all that is necessary, anywhere in the code is: - [[LocalyticsSession shared] tagEvent:@"MY_EVENT"]; - */ -+ (LocalyticsSession *)sharedLocalyticsSession; -+ (LocalyticsSession *)shared; -//************************************************************************************************// - - -//************************************************************************************************// -#pragma mark - Simple Integration Methods -/*! - @method integrateLocalytics - @abstract Initializes the Localytics Object and auto-integrates basic open/close - session and upload code. - @param applicationKey The key unique for each application generated at www.localytics.com - @param launchOptions Launch options - */ -- (void)integrateLocalytics:(NSString *)appKey launchOptions:(NSDictionary *)launchOptions; - -/*! - @method integratePushNotifications - @abstract Lets the Localytics SDK handle registering for and handling push notifications - @param remoteNotificationType The types of notifications for which to register - */ -- (void)integratePushNotifications:(UIRemoteNotificationType)remoteNotificationType; -//************************************************************************************************// - - -//************************************************************************************************// -#pragma mark - Developer Options -/*! - @property enableHTTPS - @abstract (Optional) Determines whether or not HTTPS is used when calling the Localytics - post URL. The default is NO. - */ -@property (nonatomic, assign) BOOL enableHTTPS; - -/*! - @property loggingEnabled - @abstract (Optional) Determines whether or Localytics debugging information is shown - to the console. The default is NO - */ -@property (nonatomic, assign) BOOL loggingEnabled; - -/*! - @property advertisingIdentifierEnabled - @abstract (Optional) Determines whether or not IDFA is collected and sent to Localytics. - The default is YES. - */ -@property (nonatomic, assign) BOOL advertisingIdentifierEnabled; - -/*! - @property sessionTimeoutInterval - @abstrac (Optional) If an App stays in the background for more than this many seconds, - start a new session when it returns to foreground. - */ -@property (atomic) float sessionTimeoutInterval; - -/*! - @property localyticsDelegate - @abstract (Optional) Assign this delegate to the class you'd like to register to recieve - the Localytics delegate callbacks (Defined at the end of this file) - */ -@property (nonatomic, assign) id localyticsDelegate; - -/*! - @method setOptIn - @abstract (OPTIONAL) Allows the application to control whether or not it will collect user data. - Even if this call is used, it is necessary to continue calling upload(). No new data will be - collected, so nothing new will be uploaded but it is necessary to upload an event telling the - server this user has opted out. - @param optedIn True if the user is opted in, false otherwise. - */ -- (void)setOptIn:(BOOL)optedIn; -//************************************************************************************************// - - -//************************************************************************************************// -#pragma mark - Tag Events Methods -/*! - @method tagEvent - @abstract Allows a session to tag a particular event as having occurred. For - example, if a view has three buttons, it might make sense to tag - each button click with the name of the button which was clicked. - For another example, in a game with many levels it might be valuable - to create a new tag every time the user gets to a new level in order - to determine how far the average user is progressing in the game. -
- Tagging Best Practices -
    -
  • DO NOT use tags to record personally identifiable information.
  • -
  • The best way to use tags is to create all the tag strings as predefined - constants and only use those. This is more efficient and removes the risk of - collecting personal information.
  • -
  • Do not set tags inside loops or any other place which gets called - frequently. This can cause a lot of data to be stored and uploaded.
  • -
-
- See the tagging guide at: http://wiki.localytics.com/ - @param event The name of the event which occurred. - @param attributes (Optional) An object/hash/dictionary of key-value pairs, contains - contextual data specific to the event. - @param rerportAttributes (Optional) Additional attributes used for custom reporting. - Available to Enterprise customers, please contact services for more details. - @param customerValueIncrease (Optional) Numeric value, added to customer lifetime value. - Integer expected. Try to use lowest possible unit, such as cents for US currency. - */ -- (void)tagEvent:(NSString *)event; - -- (void)tagEvent:(NSString *)event - attributes:(NSDictionary *)attributes; - -- (void)tagEvent:(NSString *)event - attributes:(NSDictionary *)attributes -customerValueIncrease:(NSNumber *)customerValueIncrease; - -- (void)tagEvent:(NSString *)event - attributes:(NSDictionary *)attributes -reportAttributes:(NSDictionary *)reportAttributes; - -- (void)tagEvent:(NSString *)event - attributes:(NSDictionary *)attributes -reportAttributes:(NSDictionary *)reportAttributes -customerValueIncrease:(NSNumber *)customerValueIncrease; -//************************************************************************************************// - - -//************************************************************************************************// -#pragma mark - Custom Dimensions Methods -/*! - @method setCustomDimension - @abstract Sets the value of a custom dimension. Custom dimensions are dimensions - which contain user defined data unlike the predefined dimensions such as carrier, model, and country. - Once a value for a custom dimension is set, the device it was set on will continue to upload that value - until the value is changed. To clear a value pass nil as the value. - The proper use of custom dimensions involves defining a dimension with less than ten distinct possible - values and assigning it to one of the four available custom dimensions. Once assigned this definition should - never be changed without changing the App Key otherwise old installs of the application will pollute new data. - */ -- (void)setCustomDimension:(int)dimension value:(NSString *)value; - -/*! - @method customDimension - @abstract Gets the custom dimension value for a given dimension. Avoid calling this on the main thread, as it - may take some time for all pending database execution. */ -- (NSString *)customDimension:(int)dimension; - -/*! - @method setValueForIdentifier - @abstract Sets the value of a custom identifier. Identifiers are a form of key/value storage - which contain custom user data. Identifiers might include things like email addresses, customer IDs, twitter - handles, and facebook IDs. - Once a value is set, the device it was set on will continue to upload that value until the value is changed. - To delete a property, pass in nil as the value. - */ -- (void)setValueForIdentifier:(NSString *)identifierName value:(NSString *)value; -//************************************************************************************************// - - -//************************************************************************************************// -#pragma mark - Tag Screen Method -/*! - @method tagScreen - @abstract Allows tagging the flow of screens encountered during the session. - @param screen The name of the screen - */ -- (void)tagScreen:(NSString *)screen; -//************************************************************************************************// - - -//************************************************************************************************// -#pragma mark - Customer Methods -/*! - @method setCustomerName - @abstract Record the customer name - Once this value is set, the device it was set on will continue to upload that value until the value is changed. - To delete the value, pass in nil. - */ -- (void)setCustomerName:(NSString *)email; - -/*! - @method setCustomerId - @abstract Record your custom customer identifier - Once this value is set, the device it was set on will continue to upload that value until the value is changed. - To delete the value, pass in nil. - */ -- (void)setCustomerId:(NSString *)customerId; - -/*! - @method setCustomerId - @abstract Record the customer's email address - Once this value is set, the device it was set on will continue to upload that value until the value is changed. - To delete the value, pass in nil. - */ -- (void)setCustomerEmail:(NSString *)email; -//************************************************************************************************// - - -//************************************************************************************************// -#pragma mark - Set Location Method -/*! - @method setLocation - @abstract Stores the user's location. This will be used in all event and session calls. - If your application has already collected the user's location, it may be passed to Localytics - via this function. This will cause all events and the session close to include the location - information. It is not required that you call this function. - @param deviceLocation The user's location. - */ -- (void)setLocation:(CLLocationCoordinate2D)deviceLocation; -//************************************************************************************************// - -//************************************************************************************************// -#pragma mark - Profile Methods -/*! - @method setProfileValue:forAttribute: - @abstract Sets the value of a profile attribute. - @param value The value to set the profile attribute to. value can be one of the following: NSString, - NSNumber(long & int), NSDate, NSArray of Strings, NSArray of NSNumbers(long & int), NSArray of Date, - nil. Passing in a 'nil' value will result in that attribute being deleted from the profile - @param attribute The attribute is the name of the profile attribute - */ -- (void)setProfileValue:(NSObject *)value forAttribute:(NSString *)attribute; -//************************************************************************************************// - -//************************************************************************************************// -#pragma mark - Advanced Integration Methods -/*! - @method LocalyticsSession - @abstract Initializes the Localytics Object. Not necessary if you choose to use startSession. - @param applicationKey The key unique for each application generated at www.localytics.com - */ -- (void)LocalyticsSession:(NSString *)appKey; - -/*! - @method startSession - @abstract An optional convenience initialize method that also calls the LocalyticsSession, open & - upload methods. Best Practice is to call open & upload immediately after Localytics Session when loading an app, - this method fascilitates that behavior. - It is recommended that this call be placed in applicationDidFinishLaunching. - @param applicationKey The key unique for each application generated - at www.localytics.com - */ -- (void)startSession:(NSString *)appKey; - -/*! - @method open - @abstract Opens the Localytics session. Not necessary if you choose to use startSession. - The session time as presented on the website is the time between open and the - final close so it is recommended to open the session as early as possible, and close - it at the last moment. The session must be opened before any tags can - be written. It is recommended that this call be placed in applicationDidFinishLaunching. -
- If for any reason this is called more than once every subsequent open call - will be ignored. - */ -- (void)open; - -/*! - @method resume - @abstract Resumes the Localytics session. When the App enters the background, the session is - closed and the time of closing is recorded. When the app returns to the foreground, the session - is resumed. If the time since closing is greater than BACKGROUND_SESSION_TIMEOUT, (15 seconds - by default) a new session is created, and uploading is triggered. Otherwise, the previous session - is reopened. - */ -- (void)resume; - -/*! - @method close - @abstract Closes the Localytics session. This should be called in - applicationWillTerminate. -
- If close is not called, the session will still be uploaded but no - events will be processed and the session time will not appear. This is - because the session is not yet closed so it should not be used in - comparison with sessions which are closed. - */ -- (void)close; - -/*! - @method upload - @abstract Creates a low priority thread which uploads any Localytics data already stored - on the device. This should be done early in the process life in order to - guarantee as much time as possible for slow connections to complete. It is also reasonable - to upload again when the application is exiting because if the upload is cancelled the data - will just get uploaded the next time the app comes up. - */ -- (void)upload; - -/*! - @method setPushToken - @abstract Stores the device's APNS token. This will be used in all event and session calls. - @param pushToken device token returned by application:didRegisterForRemoteNotificationsWithDeviceToken: - */ -- (void)setPushToken:(NSData *)pushToken; - -#ifdef MARKETING_PLATFORM -/*! - @method handleRemoteNotification - @abstract Used to record performance data for push notifications - @param notificationInfo The dictionary from either didFinishLaunchingWithOptions - or didReceiveRemoteNotification should be passed on to this method - */ -- (void)handleRemoteNotification:(NSDictionary *)notificationInfo; -#endif - -@end - -#pragma mark - -@protocol LocalyticsSessionDelegate -@optional - -/*! - @method localyticsWillResumeSession - @abstract Register for this callback to be notified when Localytics will resume - a session. See the on the 'resume' method for additional details. - @param willResumeExistingSession This flag will indicate if Localytics restored an existing - session or started a new one. - */ -- (void)localyticsWillResumeSession:(BOOL)willResumeExistingSession; - -/*! - @method localyticsDidResumeSession - @abstract Register for this callback to be notified when Localytics has resumed - a session. See the on the 'resume' method for additional details. - @param didResumeExistingSession This flag will indicate if Localytics restored an existing - session or started a new one. - */ -- (void)localyticsDidResumeSession:(BOOL)didResumeExistingSession; - -/*! - @method localyticsResumedSession - @abstract Register for this callback to be notified when Localytics has either - resumed a previous session or created a new one. See the on the 'resume' method - for additional details. - @param didResumeExistingSession This flag will indicate if Localytics restored an existing - session or started a new one. - @deprecated This method is deprecated. Use 'localyticsDidResumeSession:' instead. - */ -- (void)localyticsResumedSession:(BOOL)didResumeExistingSession __attribute__((deprecated("This method is deprecated. Use 'localyticsDidResumeSession:' instead."))); - -/*! - @method localyticsPrepareUploadBody - @abstract Register for this callback if you wish to modify the upload body before - being sent to Localytics - @param uploadBody The upload body as prepared by Localytics - @return The modified upload body - */ -- (NSString *)localyticsPrepareUploadBody:(NSString *)uploadBody; - -@end diff --git a/iphone/Maps/Statistics/Localitycs/iOSa_2.60.0.version b/iphone/Maps/Statistics/Localitycs/iOSa_2.60.0.version deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/iphone/Maps/Statistics/Localitycs/libLocalyticsAMP.a b/iphone/Maps/Statistics/Localitycs/libLocalyticsAMP.a deleted file mode 100644 index 714248261f..0000000000 Binary files a/iphone/Maps/Statistics/Localitycs/libLocalyticsAMP.a and /dev/null differ diff --git a/iphone/Maps/Statistics/Statistics.mm b/iphone/Maps/Statistics/Statistics.mm index cb8399ef03..7887f38c9c 100644 --- a/iphone/Maps/Statistics/Statistics.mm +++ b/iphone/Maps/Statistics/Statistics.mm @@ -3,7 +3,6 @@ #include "../../../platform/settings.hpp" #import "Flurry.h" #import "AppInfo.h" -#import "LocalyticsSession.h" @implementation Statistics @@ -14,9 +13,6 @@ [Flurry startSession:[[NSBundle mainBundle] objectForInfoDictionaryKey:@"FlurryKey"]]; [Flurry setCrashReportingEnabled:YES]; [Flurry setSessionReportsOnPauseEnabled:NO]; - - [[LocalyticsSession shared] integrateLocalytics:[[NSBundle mainBundle] objectForInfoDictionaryKey:@"LocalyticsKey"] launchOptions:launchOptions]; - [LocalyticsSession shared].enableHTTPS = YES; } } @@ -36,10 +32,7 @@ - (void)logEvent:(NSString *)eventName withParameters:(NSDictionary *)parameters { if (self.enabled) - { [Flurry logEvent:eventName withParameters:parameters]; - [[LocalyticsSession shared] tagEvent:eventName attributes:parameters]; - } } - (void)logEvent:(NSString *)eventName @@ -70,45 +63,22 @@ - (void)applicationWillResignActive { - [self closeLocalytics]; } - (void)applicationWillTerminate { - [self closeLocalytics]; } - (void)applicationDidEnterBackground { - [self closeLocalytics]; } - (void)applicationWillEnterForeground { - [self resumeLocalytics]; } - (void)applicationDidBecomeActive { - [self resumeLocalytics]; -} - -- (void)resumeLocalytics -{ - if (self.enabled) - { - [[LocalyticsSession shared] resume]; - [[LocalyticsSession shared] upload]; - } -} - -- (void)closeLocalytics -{ - if (self.enabled) - { - [[LocalyticsSession shared] close]; - [[LocalyticsSession shared] upload]; - } } - (id)init