forked from organicmaps/organicmaps
[ios] Removed myTracker, Aarki and GoogleAnalytics
This commit is contained in:
parent
03747d336a
commit
5ebba22d26
29 changed files with 37 additions and 1419 deletions
|
@ -3,7 +3,6 @@
|
|||
#import "Preferences.h"
|
||||
#import "LocationManager.h"
|
||||
#import "Statistics.h"
|
||||
#import "AarkiContact.h"
|
||||
#import <MobileAppTracker/MobileAppTracker.h>
|
||||
#import "UIKitCategories.h"
|
||||
#import "AppInfo.h"
|
||||
|
@ -112,23 +111,7 @@ void InitLocalizedStrings()
|
|||
appsFlyerParams.debug = YES;
|
||||
#endif
|
||||
|
||||
// Google Analytics
|
||||
NSString * googleAnalyticsTrackingId = [[NSBundle mainBundle] objectForInfoDictionaryKey:@"GoogleAnalyticsTrackingID"];
|
||||
MRGSGoogleAnalyticsParams * googleAnalyticsParams = [[MRGSGoogleAnalyticsParams alloc] initWithTrackingId:googleAnalyticsTrackingId];
|
||||
#ifdef DEBUG
|
||||
googleAnalyticsParams.logLevel = 4;
|
||||
#else
|
||||
googleAnalyticsParams.logLevel = 0;
|
||||
#endif
|
||||
|
||||
// MyTracker (Adman Tracker)
|
||||
NSString * admanTrackerAppId = [[NSBundle mainBundle] objectForInfoDictionaryKey:@"AdmanTrackerAppID"];
|
||||
MRGSMyTrackerParams * myTrackerParams = [[MRGSMyTrackerParams alloc] initWithAppId:admanTrackerAppId];
|
||||
#ifdef DEBUG
|
||||
myTrackerParams.enableLogging = YES;
|
||||
#endif
|
||||
|
||||
NSArray * externalParams = @[appsFlyerParams, googleAnalyticsParams, myTrackerParams];
|
||||
NSArray * externalParams = @[appsFlyerParams];
|
||||
|
||||
[MRGServiceInit startWithServiceParams:mrgsParams externalSDKParams:externalParams delegate:nil];
|
||||
[[MRGSApplication currentApplication] markAsUpdatedWithRegistrationDate:[NSDate date]];
|
||||
|
@ -276,12 +259,6 @@ void InitLocalizedStrings()
|
|||
[FBSettings setDefaultAppID:[[NSBundle mainBundle] objectForInfoDictionaryKey:@"FacebookAppID"]];
|
||||
[FBAppEvents activateApp];
|
||||
|
||||
if ([MapsAppDelegate isFirstAppLaunch])
|
||||
{
|
||||
NSString * appId = [[NSBundle mainBundle] objectForInfoDictionaryKey:@"AarkiClientSecurityKey"];
|
||||
[AarkiContact registerApp:appId];
|
||||
}
|
||||
|
||||
// MAT will not function without the measureSession call included
|
||||
[MobileAppTracker measureSession];
|
||||
|
||||
|
|
|
@ -10,12 +10,8 @@
|
|||
<integer>148</integer>
|
||||
<key>MRGServiceAppleAppID</key>
|
||||
<string>510623322</string>
|
||||
<key>GoogleAnalyticsTrackingID</key>
|
||||
<string>UA-45510902-17</string>
|
||||
<key>LocalNotificationsFileName</key>
|
||||
<string>LocalNotifications</string>
|
||||
<key>AarkiClientSecurityKey</key>
|
||||
<string>2mWtcnLWDuXgdKEhYLmatwh3cby3</string>
|
||||
<key>CFBundleDevelopmentRegion</key>
|
||||
<string>en</string>
|
||||
<key>CFBundleDisplayName</key>
|
||||
|
|
|
@ -16,10 +16,7 @@
|
|||
46F26C7310F61FD600ECCA39 /* OpenGLES.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 46F26C7210F61FD600ECCA39 /* OpenGLES.framework */; };
|
||||
46F26CD810F623BA00ECCA39 /* EAGLView.mm in Sources */ = {isa = PBXBuildFile; fileRef = 46F26CD710F623BA00ECCA39 /* EAGLView.mm */; };
|
||||
46F26D1F10F626CB00ECCA39 /* QuartzCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 46F26D1E10F626CB00ECCA39 /* QuartzCore.framework */; };
|
||||
6B948E1D1A25533C00229BD5 /* libGoogleAnalyticsServices.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 6B948E191A25533C00229BD5 /* libGoogleAnalyticsServices.a */; };
|
||||
6B948E1E1A25533C00229BD5 /* libAdIdAccess.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 6B948E1A1A25533C00229BD5 /* libAdIdAccess.a */; };
|
||||
6B948E1F1A25533C00229BD5 /* libAppsFlyerLib.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 6B948E1B1A25533C00229BD5 /* libAppsFlyerLib.a */; };
|
||||
6B948E201A25533C00229BD5 /* libMyTracker.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 6B948E1C1A25533C00229BD5 /* libMyTracker.a */; };
|
||||
6BBD66B31A695722005FF58D /* MobileAppTracker.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 6BBD66B11A695722005FF58D /* MobileAppTracker.framework */; };
|
||||
6BBD66B41A695722005FF58D /* MRGService.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 6BBD66B21A695722005FF58D /* MRGService.framework */; };
|
||||
6BBD66B51A6957EE005FF58D /* FacebookSDK.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 974386D81934CBAC00FD5659 /* FacebookSDK.framework */; };
|
||||
|
@ -74,7 +71,6 @@
|
|||
97D40C08184CFA4100A1D572 /* ImagesPro.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 97D40C07184CFA4100A1D572 /* ImagesPro.xcassets */; };
|
||||
97D40C0A184D031900A1D572 /* Images.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 97D40C09184D031900A1D572 /* Images.xcassets */; };
|
||||
97D807BE18A93C8800D416E0 /* iAd.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 97C98651186C5EF000AF7E9E /* iAd.framework */; };
|
||||
97DD585518A8EAFA0079837E /* libAarkiSDK.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 97DD585218A8EAFA0079837E /* libAarkiSDK.a */; };
|
||||
97DD585C18A8EB130079837E /* libFlurry_6.0.0.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 97DD585A18A8EB120079837E /* libFlurry_6.0.0.a */; };
|
||||
97DEA09618D75BB000C5F963 /* ContextViews.mm in Sources */ = {isa = PBXBuildFile; fileRef = 97DEA09518D75BB000C5F963 /* ContextViews.mm */; };
|
||||
97ECD871183620CE00F77A46 /* AdSupport.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 97ECD870183620CE00F77A46 /* AdSupport.framework */; settings = {ATTRIBUTES = (Weak, ); }; };
|
||||
|
@ -91,9 +87,6 @@
|
|||
A32B6D4D1A14980500E54A65 /* iosOGLContextFactory.mm in Sources */ = {isa = PBXBuildFile; fileRef = A32B6D4B1A14980500E54A65 /* iosOGLContextFactory.mm */; };
|
||||
A3CC2CD41A1C723900B832E1 /* LocationPredictor.mm in Sources */ = {isa = PBXBuildFile; fileRef = A3CC2CD21A1C723900B832E1 /* LocationPredictor.mm */; };
|
||||
B00510FB1A11015900A61AA4 /* CFNetwork.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 972CDCC51887F1B7006641CA /* CFNetwork.framework */; };
|
||||
B00510FD1A11019400A61AA4 /* libsqlite3.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = B00510FC1A11019400A61AA4 /* libsqlite3.dylib */; };
|
||||
B00510FF1A1101A000A61AA4 /* libxml2.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = B00510FE1A1101A000A61AA4 /* libxml2.dylib */; };
|
||||
B00511011A1101AA00A61AA4 /* libz.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = B00511001A1101AA00A61AA4 /* libz.dylib */; };
|
||||
B00511021A1101E000A61AA4 /* AVFoundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 97C98655186C734000AF7E9E /* AVFoundation.framework */; };
|
||||
B00511041A1101F600A61AA4 /* CoreData.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = B00511031A1101F600A61AA4 /* CoreData.framework */; };
|
||||
B00511061A1101FC00A61AA4 /* CoreMedia.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = B00511051A1101FC00A61AA4 /* CoreMedia.framework */; };
|
||||
|
@ -203,10 +196,7 @@
|
|||
46F8A2EB10EB63040045521A /* MapViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; lineEnding = 0; path = MapViewController.h; sourceTree = "<group>"; xcLanguageSpecificationIdentifier = xcode.lang.cpp; };
|
||||
49DE1CA213437D7A00A93417 /* libbzip2.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; path = libbzip2.a; sourceTree = SOURCE_ROOT; };
|
||||
6B948E141A254C9800229BD5 /* ExternalLibs */ = {isa = PBXFileReference; lastKnownFileType = folder; path = ExternalLibs; sourceTree = "<group>"; };
|
||||
6B948E191A25533C00229BD5 /* libGoogleAnalyticsServices.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libGoogleAnalyticsServices.a; path = Statistics/MRGService/ExternalLibs/GoogleAnalytics/libGoogleAnalyticsServices.a; sourceTree = "<group>"; };
|
||||
6B948E1A1A25533C00229BD5 /* libAdIdAccess.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libAdIdAccess.a; path = Statistics/MRGService/ExternalLibs/GoogleAnalytics/libAdIdAccess.a; sourceTree = "<group>"; };
|
||||
6B948E1B1A25533C00229BD5 /* libAppsFlyerLib.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libAppsFlyerLib.a; path = Statistics/MRGService/ExternalLibs/AppsFlyer/libAppsFlyerLib.a; sourceTree = "<group>"; };
|
||||
6B948E1C1A25533C00229BD5 /* libMyTracker.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libMyTracker.a; path = Statistics/MRGService/ExternalLibs/MyTracker/libMyTracker.a; sourceTree = "<group>"; };
|
||||
6BBD66B11A695722005FF58D /* MobileAppTracker.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = MobileAppTracker.framework; path = Statistics/MobileAppTracker.framework; sourceTree = "<group>"; };
|
||||
6BBD66B21A695722005FF58D /* MRGService.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = MRGService.framework; path = Statistics/MRGService/MRGService.framework; sourceTree = "<group>"; };
|
||||
772923C9184E0440008C1EDC /* hu */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = hu; path = hu.lproj/Localizable.strings; sourceTree = "<group>"; };
|
||||
|
@ -315,9 +305,6 @@
|
|||
97D092B8190AA69700FF645B /* SmallCompassView.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = SmallCompassView.mm; sourceTree = "<group>"; };
|
||||
97D40C07184CFA4100A1D572 /* ImagesPro.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = ImagesPro.xcassets; sourceTree = SOURCE_ROOT; };
|
||||
97D40C09184D031900A1D572 /* Images.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Images.xcassets; sourceTree = SOURCE_ROOT; };
|
||||
97DD585218A8EAFA0079837E /* libAarkiSDK.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; path = libAarkiSDK.a; sourceTree = "<group>"; };
|
||||
97DD585318A8EAFA0079837E /* Aarki.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Aarki.h; sourceTree = "<group>"; };
|
||||
97DD585418A8EAFA0079837E /* AarkiContact.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AarkiContact.h; sourceTree = "<group>"; };
|
||||
97DD585A18A8EB120079837E /* libFlurry_6.0.0.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; path = libFlurry_6.0.0.a; sourceTree = "<group>"; };
|
||||
97DD585B18A8EB120079837E /* Flurry.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Flurry.h; sourceTree = "<group>"; };
|
||||
97DEA09018D706C300C5F963 /* Common.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Common.h; sourceTree = "<group>"; };
|
||||
|
@ -343,9 +330,6 @@
|
|||
A32B6D4B1A14980500E54A65 /* iosOGLContextFactory.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = iosOGLContextFactory.mm; path = Platform/opengl/iosOGLContextFactory.mm; sourceTree = "<group>"; };
|
||||
A3CC2CD21A1C723900B832E1 /* LocationPredictor.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = LocationPredictor.mm; sourceTree = "<group>"; };
|
||||
A3CC2CD31A1C723900B832E1 /* LocationPredictor.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LocationPredictor.h; sourceTree = "<group>"; };
|
||||
B00510FC1A11019400A61AA4 /* libsqlite3.dylib */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.dylib"; name = libsqlite3.dylib; path = usr/lib/libsqlite3.dylib; sourceTree = SDKROOT; };
|
||||
B00510FE1A1101A000A61AA4 /* libxml2.dylib */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.dylib"; name = libxml2.dylib; path = usr/lib/libxml2.dylib; sourceTree = SDKROOT; };
|
||||
B00511001A1101AA00A61AA4 /* libz.dylib */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.dylib"; name = libz.dylib; path = usr/lib/libz.dylib; sourceTree = SDKROOT; };
|
||||
B00511031A1101F600A61AA4 /* CoreData.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreData.framework; path = System/Library/Frameworks/CoreData.framework; sourceTree = SDKROOT; };
|
||||
B00511051A1101FC00A61AA4 /* CoreMedia.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreMedia.framework; path = System/Library/Frameworks/CoreMedia.framework; sourceTree = SDKROOT; };
|
||||
B08AA8CC1A24C7BC00810B1C /* LocalNotificationInfoProvider.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LocalNotificationInfoProvider.h; sourceTree = "<group>"; };
|
||||
|
@ -503,16 +487,10 @@
|
|||
6BBD66B41A695722005FF58D /* MRGService.framework in Frameworks */,
|
||||
B08AA8D61A25E58C00810B1C /* Social.framework in Frameworks */,
|
||||
B08AA8D51A25E58500810B1C /* PassKit.framework in Frameworks */,
|
||||
6B948E1D1A25533C00229BD5 /* libGoogleAnalyticsServices.a in Frameworks */,
|
||||
6B948E1E1A25533C00229BD5 /* libAdIdAccess.a in Frameworks */,
|
||||
6B948E1F1A25533C00229BD5 /* libAppsFlyerLib.a in Frameworks */,
|
||||
6B948E201A25533C00229BD5 /* libMyTracker.a in Frameworks */,
|
||||
B00511061A1101FC00A61AA4 /* CoreMedia.framework in Frameworks */,
|
||||
B00511041A1101F600A61AA4 /* CoreData.framework in Frameworks */,
|
||||
B00511021A1101E000A61AA4 /* AVFoundation.framework in Frameworks */,
|
||||
B00511011A1101AA00A61AA4 /* libz.dylib in Frameworks */,
|
||||
B00510FF1A1101A000A61AA4 /* libxml2.dylib in Frameworks */,
|
||||
B00510FD1A11019400A61AA4 /* libsqlite3.dylib in Frameworks */,
|
||||
B00510FB1A11015900A61AA4 /* CFNetwork.framework in Frameworks */,
|
||||
97D807BE18A93C8800D416E0 /* iAd.framework in Frameworks */,
|
||||
97719D491843B6F700BDD815 /* Security.framework in Frameworks */,
|
||||
|
@ -527,7 +505,6 @@
|
|||
46F26C7310F61FD600ECCA39 /* OpenGLES.framework in Frameworks */,
|
||||
46F26D1F10F626CB00ECCA39 /* QuartzCore.framework in Frameworks */,
|
||||
EEB7E22211E9079400080A68 /* CoreLocation.framework in Frameworks */,
|
||||
97DD585518A8EAFA0079837E /* libAarkiSDK.a in Frameworks */,
|
||||
97DD585C18A8EB130079837E /* libFlurry_6.0.0.a in Frameworks */,
|
||||
FA87151B12B1518F00592DAF /* SystemConfiguration.framework in Frameworks */,
|
||||
);
|
||||
|
@ -631,15 +608,9 @@
|
|||
children = (
|
||||
6BBD66B11A695722005FF58D /* MobileAppTracker.framework */,
|
||||
6BBD66B21A695722005FF58D /* MRGService.framework */,
|
||||
6B948E191A25533C00229BD5 /* libGoogleAnalyticsServices.a */,
|
||||
6B948E1A1A25533C00229BD5 /* libAdIdAccess.a */,
|
||||
6B948E1B1A25533C00229BD5 /* libAppsFlyerLib.a */,
|
||||
6B948E1C1A25533C00229BD5 /* libMyTracker.a */,
|
||||
B00511051A1101FC00A61AA4 /* CoreMedia.framework */,
|
||||
B00511031A1101F600A61AA4 /* CoreData.framework */,
|
||||
B00511001A1101AA00A61AA4 /* libz.dylib */,
|
||||
B00510FE1A1101A000A61AA4 /* libxml2.dylib */,
|
||||
B00510FC1A11019400A61AA4 /* libsqlite3.dylib */,
|
||||
974386D81934CBAC00FD5659 /* FacebookSDK.framework */,
|
||||
97EDDCE418A299C000AEFB7A /* Twitter.framework */,
|
||||
972CDCC51887F1B7006641CA /* CFNetwork.framework */,
|
||||
|
@ -855,9 +826,6 @@
|
|||
CB252D6C16FF82C8001E41E9 /* Statistics.mm */,
|
||||
97DD585A18A8EB120079837E /* libFlurry_6.0.0.a */,
|
||||
97DD585B18A8EB120079837E /* Flurry.h */,
|
||||
97DD585218A8EAFA0079837E /* libAarkiSDK.a */,
|
||||
97DD585318A8EAFA0079837E /* Aarki.h */,
|
||||
97DD585418A8EAFA0079837E /* AarkiContact.h */,
|
||||
);
|
||||
path = Statistics;
|
||||
sourceTree = "<group>";
|
||||
|
|
|
@ -1,108 +0,0 @@
|
|||
#import <UIKit/UIKit.h>
|
||||
|
||||
//! Protocol for customizing Aarki offers and providing offer request callbacks
|
||||
/*!
|
||||
|
||||
The \a didExit callback is called whenever the user leaves the view controller.
|
||||
This may happen when the user successfully completes, quits or abandons the offer.
|
||||
*/
|
||||
@class AarkiOffer;
|
||||
|
||||
@protocol AarkiDelegate<NSObject>
|
||||
|
||||
@optional
|
||||
- (void)didExit;
|
||||
|
||||
@end
|
||||
|
||||
@protocol AarkiOfferDisplay<NSObject>
|
||||
|
||||
@required
|
||||
|
||||
//! Show the offer (as a full screen modal overlay)
|
||||
/*!
|
||||
\param viewController For example the controller of the view which contains the ad which user clicks to present this offer
|
||||
|
||||
This method is essentially equivalent to:
|
||||
\code
|
||||
[viewController presentModalViewController:self animated:animated];
|
||||
\endcode
|
||||
|
||||
The offer will be dismissed with animation if it was presented with animation.
|
||||
\sa dismiss
|
||||
*/
|
||||
- (void)presentWithParent:(UIViewController *)viewController animated:(BOOL)animated;
|
||||
|
||||
//! Hide the offer. You will not need to call this method explicitly.
|
||||
- (void)dismiss;
|
||||
|
||||
//! Internal
|
||||
- (void)setViewOptions:(NSDictionary *)dict;
|
||||
|
||||
|
||||
@property (assign) id<AarkiDelegate> loaderDelegate;
|
||||
|
||||
@end
|
||||
|
||||
|
||||
typedef enum {
|
||||
AarkiStatusOK,
|
||||
AarkiStatusNotAvailable,
|
||||
AarkiStatusAppNotRegistered
|
||||
} AarkiStatus;
|
||||
|
||||
typedef void(^AarkiLoaderCompletionBlock)(AarkiStatus);
|
||||
|
||||
|
||||
//! Class to request Aarki offers
|
||||
@interface Aarki : NSObject <AarkiDelegate>
|
||||
{
|
||||
@public
|
||||
id<AarkiOfferDisplay> offerViewController;
|
||||
id<AarkiDelegate> delegate;
|
||||
}
|
||||
|
||||
@property (nonatomic, retain) id<AarkiOfferDisplay> offerViewController;
|
||||
@property (nonatomic, assign) id<AarkiDelegate> delegate;
|
||||
|
||||
@property (nonatomic, copy) AarkiLoaderCompletionBlock completionBlock_;
|
||||
|
||||
//! Initialize
|
||||
- (id)init;
|
||||
|
||||
|
||||
// Engage-to-earn video and rich media ads
|
||||
- (void)fetchFullScreenAd:(NSString *)placementId
|
||||
options:(NSDictionary *)options
|
||||
completion:(AarkiLoaderCompletionBlock)completion;
|
||||
|
||||
- (void)showFullScreenAd:(NSString *)placementId
|
||||
withParent:(UIViewController *)parentViewController
|
||||
options:(NSDictionary *)options;
|
||||
|
||||
- (void)showFullScreenAd:(NSString *)placementId
|
||||
withParent:(UIViewController *)parentViewController
|
||||
options:(NSDictionary *)options
|
||||
completion:(AarkiLoaderCompletionBlock)completion;
|
||||
|
||||
// Interstitials
|
||||
- (void)fetchInterstitialAd:(NSString *)placementId
|
||||
options:(NSDictionary *)options
|
||||
completion:(AarkiLoaderCompletionBlock)completion;
|
||||
|
||||
- (void)showInterstitialAd:(NSString *)placementId
|
||||
withParent:(UIViewController *)parentViewController
|
||||
options:(NSDictionary *)options
|
||||
completion:(AarkiLoaderCompletionBlock)completion;
|
||||
|
||||
// Offer Deck
|
||||
- (void)showAds:(NSString *)placementId
|
||||
withParent:(UIViewController *)parentViewController
|
||||
options:(NSDictionary *)options;
|
||||
|
||||
|
||||
- (id<AarkiOfferDisplay>)nativeViewControllerForPlacement:(NSString *)placementId options:(NSDictionary *)options;
|
||||
|
||||
|
||||
@end
|
||||
|
|
@ -1,45 +0,0 @@
|
|||
#import <UIKit/UIKit.h>
|
||||
|
||||
typedef void(^AarkiRewards)(NSString *placementId, NSNumber *rewards);
|
||||
|
||||
@interface AarkiContact : NSObject
|
||||
|
||||
// Register Application in Aarki System
|
||||
+ (void)registerApp:(NSString *)securityKey;
|
||||
|
||||
// Pass security configuration (DEPRECATED in SDK 4.3)
|
||||
+ (void)registerAppWithClientSecurityKey:(NSString *)securityKey __attribute__ ((deprecated("Please use registerApp:(NSString *)securityKey")));
|
||||
|
||||
// Register Application (DEPRECATED in SDK 4.3)
|
||||
+ (void)registerApp:(NSString *)installEventId withClientSecurityKey:(NSString *)securityKey __attribute__ ((deprecated("Please use registerApp:(NSString *)securityKey")));
|
||||
|
||||
// Register custom event
|
||||
+ (void)registerEvent:(NSString *)eventId;
|
||||
|
||||
// Set reward callback
|
||||
+ (void)setRewardCallback:(AarkiRewards)rewardCallback;
|
||||
|
||||
// Set custom user ID
|
||||
+ (void)setUserId:(NSString *)userId;
|
||||
|
||||
// For extension developers, pass values to distinguish client type, e. g. "unity"
|
||||
+ (void)setClientType:(NSString *)clientType;
|
||||
|
||||
// Per-app unique identifier
|
||||
+ (NSString *)aarkiIdentifier;
|
||||
|
||||
// User ID
|
||||
+ (NSString *)userId;
|
||||
|
||||
// Advertising Identifier
|
||||
+ (NSString *)advertisingId;
|
||||
|
||||
+ (BOOL)advertisingTrackingEnabled;
|
||||
|
||||
// Aarki SDK version
|
||||
+ (NSString *)libraryVersion;
|
||||
|
||||
// Collect standard request information
|
||||
+ (void)setStandardRequestParameters:(NSMutableDictionary *)requestDict;
|
||||
|
||||
@end
|
|
@ -1,187 +0,0 @@
|
|||
/*!
|
||||
@header GAI.h
|
||||
@abstract Google Analytics iOS SDK Header
|
||||
@version 3.0
|
||||
@copyright Copyright 2013 Google Inc. All rights reserved.
|
||||
*/
|
||||
|
||||
#import <Foundation/Foundation.h>
|
||||
#import "GAILogger.h"
|
||||
#import "GAITracker.h"
|
||||
#import "GAITrackedViewController.h"
|
||||
|
||||
|
||||
typedef NS_ENUM(NSUInteger, GAIDispatchResult) {
|
||||
kGAIDispatchNoData,
|
||||
kGAIDispatchGood,
|
||||
kGAIDispatchError
|
||||
};
|
||||
|
||||
/*! Google Analytics product string. */
|
||||
extern NSString *const kGAIProduct;
|
||||
|
||||
/*! Google Analytics version string. */
|
||||
extern NSString *const kGAIVersion;
|
||||
|
||||
/*!
|
||||
NSError objects returned by the Google Analytics SDK may have this error domain
|
||||
to indicate that the error originated in the Google Analytics SDK.
|
||||
*/
|
||||
extern NSString *const kGAIErrorDomain;
|
||||
|
||||
/*! Google Analytics error codes. */
|
||||
typedef enum {
|
||||
// This error code indicates that there was no error. Never used.
|
||||
kGAINoError = 0,
|
||||
|
||||
// This error code indicates that there was a database-related error.
|
||||
kGAIDatabaseError,
|
||||
|
||||
// This error code indicates that there was a network-related error.
|
||||
kGAINetworkError,
|
||||
} GAIErrorCode;
|
||||
|
||||
/*!
|
||||
Google Analytics iOS top-level class. Provides facilities to create trackers
|
||||
and set behaviorial flags.
|
||||
*/
|
||||
@interface GAI : NSObject
|
||||
|
||||
/*!
|
||||
For convenience, this class exposes a default tracker instance.
|
||||
This is initialized to `nil` and will be set to the first tracker that is
|
||||
instantiated in trackerWithTrackingId:. It may be overridden as desired.
|
||||
|
||||
The GAITrackedViewController class will, by default, use this tracker instance.
|
||||
*/
|
||||
@property(nonatomic, assign) id<GAITracker> defaultTracker;
|
||||
|
||||
/*!
|
||||
The GAILogger to use.
|
||||
*/
|
||||
@property(nonatomic, retain) id<GAILogger> logger;
|
||||
|
||||
/*!
|
||||
When this is true, no tracking information will be gathered; tracking calls
|
||||
will effectively become no-ops. When set to true, all tracking information that
|
||||
has not yet been submitted. The value of this flag will be persisted
|
||||
automatically by the SDK. Developers can optionally use this flag to implement
|
||||
an opt-out setting in the app to allows users to opt out of Google Analytics
|
||||
tracking.
|
||||
|
||||
This is set to `NO` the first time the Google Analytics SDK is used on a
|
||||
device, and is persisted thereafter.
|
||||
*/
|
||||
@property(nonatomic, assign) BOOL optOut;
|
||||
|
||||
/*!
|
||||
If this value is positive, tracking information will be automatically
|
||||
dispatched every dispatchInterval seconds. Otherwise, tracking information must
|
||||
be sent manually by calling dispatch.
|
||||
|
||||
By default, this is set to `120`, which indicates tracking information should
|
||||
be dispatched automatically every 120 seconds.
|
||||
*/
|
||||
@property(nonatomic, assign) NSTimeInterval dispatchInterval;
|
||||
|
||||
/*!
|
||||
When set to true, the SDK will record the currently registered uncaught
|
||||
exception handler, and then register an uncaught exception handler which tracks
|
||||
the exceptions that occurred using defaultTracker. If defaultTracker is not
|
||||
`nil`, this function will track the exception on the tracker and attempt to
|
||||
dispatch any outstanding tracking information for 5 seconds. It will then call
|
||||
the previously registered exception handler, if any. When set back to false,
|
||||
the previously registered uncaught exception handler will be restored.
|
||||
*/
|
||||
@property(nonatomic, assign) BOOL trackUncaughtExceptions;
|
||||
|
||||
/*!
|
||||
When this is 'YES', no tracking information will be sent. Defaults to 'NO'.
|
||||
*/
|
||||
@property(nonatomic, assign) BOOL dryRun;
|
||||
|
||||
/*! Get the shared instance of the Google Analytics for iOS class. */
|
||||
+ (GAI *)sharedInstance;
|
||||
|
||||
/*!
|
||||
Creates or retrieves a GAITracker implementation with the specified name and
|
||||
tracking ID. If the tracker for the specified name does not already exist, then
|
||||
it will be created and returned; otherwise, the existing tracker will be
|
||||
returned. If the existing tracker for the respective name has a different
|
||||
tracking ID, that tracking ID is not changed by this method. If defaultTracker
|
||||
is not set, it will be set to the tracker instance returned here.
|
||||
|
||||
@param name The name of this tracker. Must not be `nil` or empty.
|
||||
|
||||
@param trackingID The tracking ID to use for this tracker. It should be of
|
||||
the form `UA-xxxxx-y`.
|
||||
|
||||
@return A GAITracker associated with the specified name. The tracker
|
||||
can be used to send tracking data to Google Analytics. The first time this
|
||||
method is called with a particular name, the tracker for that name will be
|
||||
returned, and subsequent calls with the same name will return the same
|
||||
instance. It is not necessary to retain the tracker because the tracker will be
|
||||
retained internally by the library.
|
||||
|
||||
If an error occurs or the name is not valid, this method will return
|
||||
`nil`.
|
||||
*/
|
||||
- (id<GAITracker>)trackerWithName:(NSString *)name
|
||||
trackingId:(NSString *)trackingId;
|
||||
|
||||
/*!
|
||||
Creates or retrieves a GAITracker implementation with name equal to
|
||||
the specified tracking ID. If the tracker for the respective name does not
|
||||
already exist, it is created, has it's tracking ID set to |trackingId|,
|
||||
and is returned; otherwise, the existing tracker is returned. If the existing
|
||||
tracker for the respective name has a different tracking ID, that tracking ID
|
||||
is not changed by this method. If defaultTracker is not set, it is set to the
|
||||
tracker instance returned here.
|
||||
|
||||
@param trackingID The tracking ID to use for this tracker. It should be of
|
||||
the form `UA-xxxxx-y`. The name of the tracker will be the same as trackingID.
|
||||
|
||||
@return A GAITracker associated with the specified trackingID. The tracker
|
||||
can be used to send tracking data to Google Analytics. The first time this
|
||||
method is called with a particular trackingID, the tracker for the respective
|
||||
name will be returned, and subsequent calls with the same trackingID
|
||||
will return the same instance. It is not necessary to retain the tracker
|
||||
because the tracker will be retained internally by the library.
|
||||
|
||||
If an error occurs or the trackingId is not valid, this method will return
|
||||
`nil`.
|
||||
*/
|
||||
- (id<GAITracker>)trackerWithTrackingId:(NSString *)trackingId;
|
||||
|
||||
/*!
|
||||
Remove a tracker from the trackers dictionary. If it is the default tracker,
|
||||
clears the default tracker as well.
|
||||
|
||||
@param name The name of the tracker.
|
||||
*/
|
||||
- (void)removeTrackerByName:(NSString *)name;
|
||||
|
||||
/*!
|
||||
Dispatches any pending tracking information.
|
||||
|
||||
Note that this does not have any effect on dispatchInterval, and can be used in
|
||||
conjunction with periodic dispatch. */
|
||||
- (void)dispatch;
|
||||
|
||||
/*!
|
||||
Dispatches the next tracking beacon in the queue, calling completionHandler when
|
||||
the tracking beacon has either been sent (returning kGAIDispatchGood) or an error has resulted
|
||||
(returning kGAIDispatchError). If there is no network connection or there is no data to send,
|
||||
kGAIDispatchNoData is returned.
|
||||
|
||||
Calling this method with a nil completionHandler is the same as calling the dispatch
|
||||
above.
|
||||
|
||||
This method can be used for background data fetching in iOS 7.0 or later.
|
||||
|
||||
It would be wise to call this when application is exiting to initiate the
|
||||
submission of any unsubmitted tracking information. Note that this does not
|
||||
have any effect on dispatchInterval, and can be used in conjunction with
|
||||
periodic dispatch. */
|
||||
- (void)dispatchWithCompletionHandler:(void (^)(GAIDispatchResult))completionHandler;
|
||||
@end
|
|
@ -1,214 +0,0 @@
|
|||
/*!
|
||||
@header GAIDictionaryBuilder.h
|
||||
@abstract Google Analytics iOS SDK Hit Format Header
|
||||
@copyright Copyright 2013 Google Inc. All rights reserved.
|
||||
*/
|
||||
|
||||
#import <Foundation/Foundation.h>
|
||||
|
||||
#import "GAIEcommerceProduct.h"
|
||||
#import "GAIEcommerceProductAction.h"
|
||||
#import "GAIEcommercePromotion.h"
|
||||
|
||||
/*!
|
||||
* Helper class to build a dictionary of hit parameters and values.
|
||||
* <br>
|
||||
* Examples:
|
||||
* <code>
|
||||
* id<GAITracker> t = // get a tracker.
|
||||
* [t send:[[[GAIDictionaryBuilder createEventWithCategory:@"EventCategory"
|
||||
* action:@"EventAction"
|
||||
* label:nil
|
||||
* value:nil]
|
||||
* set:@"dimension1" forKey:[GAIFields customDimensionForIndex:1]] build]];
|
||||
* </code>
|
||||
* This will send an event hit type with the specified parameters
|
||||
* and a custom dimension parameter.
|
||||
* <br>
|
||||
* If you want to send a parameter with all hits, set it on GAITracker directly.
|
||||
* <code>
|
||||
* [t set:kGAIScreenName value:@"Home"];
|
||||
* [t send:[[GAIDictionaryBuilder createSocialWithNetwork:@"Google+"
|
||||
* action:@"PlusOne"
|
||||
* target:@"SOME_URL"] build]];
|
||||
* [t send:[[GAIDictionaryBuilder createSocialWithNetwork:@"Google+"
|
||||
* action:@"Share"
|
||||
* target:@"SOME_POST"] build]];
|
||||
* [t send:[[GAIDictionaryBuilder createSocialWithNetwork:@"Google+"
|
||||
* action:@"HangOut"
|
||||
* target:@"SOME_CIRCLE"]
|
||||
* build]];
|
||||
* </code>
|
||||
* You can override a value set on the tracker by adding it to the dictionary.
|
||||
* <code>
|
||||
* [t set:kGAIScreenName value:@"Home"];
|
||||
* [t send:...];
|
||||
* [t send[[[GAIDictionaryBuilder createEventWithCategory:@"click"
|
||||
* action:@"popup"
|
||||
* label:nil
|
||||
* value:nil]
|
||||
* set:@"popup title" forKey:kGAIScreenName] build]];
|
||||
* </code>
|
||||
* The values set via [GAIDictionaryBuilder set] or
|
||||
* [GAIDictionaryBuilder setAll] will override any existing values in the
|
||||
* GAIDictionaryBuilder object (i.e. initialized by
|
||||
* [GAIDictionaryBuilder createXYZ]). e.g.
|
||||
* <code>
|
||||
* GAIDictionaryBuilder *m =
|
||||
* GAIDictionaryBuilder createTimingWithCategory:@"category"
|
||||
* interval:@0
|
||||
* name:@"name"
|
||||
* label:nil];
|
||||
* [t send:[m.set:@"10" forKey:kGAITimingVar] build];
|
||||
* [t send:[m.set:@"20" forKey:kGAITimingVar] build];
|
||||
* </code>
|
||||
*/
|
||||
@interface GAIDictionaryBuilder : NSObject
|
||||
|
||||
- (GAIDictionaryBuilder *)set:(NSString *)value
|
||||
forKey:(NSString *)key;
|
||||
|
||||
/*!
|
||||
* Copies all the name-value pairs from params into this object, ignoring any
|
||||
* keys that are not NSString and any values that are neither NSString or
|
||||
* NSNull.
|
||||
*/
|
||||
- (GAIDictionaryBuilder *)setAll:(NSDictionary *)params;
|
||||
|
||||
/*!
|
||||
* Returns the value for the input parameter paramName, or nil if paramName
|
||||
* is not present.
|
||||
*/
|
||||
- (NSString *)get:(NSString *)paramName;
|
||||
|
||||
/*!
|
||||
* Return an NSMutableDictionary object with all the parameters set in this
|
||||
*/
|
||||
- (NSMutableDictionary *)build;
|
||||
|
||||
/*!
|
||||
* Parses and translates utm campaign parameters to analytics campaign param
|
||||
* and returns them as a map.
|
||||
*
|
||||
* @param params url containing utm campaign parameters.
|
||||
*
|
||||
* Valid campaign parameters are:
|
||||
* <ul>
|
||||
* <li>utm_id</li>
|
||||
* <li>utm_campaign</li>
|
||||
* <li>utm_content</li>
|
||||
* <li>utm_medium</li>
|
||||
* <li>utm_source</li>
|
||||
* <li>utm_term</li>
|
||||
* <li>dclid</li>
|
||||
* <li>gclid</li>
|
||||
* <li>gmob_t</li>
|
||||
* </ul>
|
||||
* <p>
|
||||
* Example:
|
||||
* http://my.site.com/index.html?utm_campaign=wow&utm_source=source
|
||||
* utm_campaign=wow&utm_source=source.
|
||||
* <p>
|
||||
* For more information on auto-tagging, see
|
||||
* http://support.google.com/googleanalytics/bin/answer.py?hl=en&answer=55590
|
||||
* <p>
|
||||
* For more information on manual tagging, see
|
||||
* http://support.google.com/googleanalytics/bin/answer.py?hl=en&answer=55518
|
||||
*/
|
||||
- (GAIDictionaryBuilder *)setCampaignParametersFromUrl:(NSString *)urlString;
|
||||
|
||||
/*!
|
||||
Returns a GAIDictionaryBuilder object with parameters specific to an appview
|
||||
hit.
|
||||
|
||||
Note that using this method will not set the screen name for followon hits. To
|
||||
do that you need to call set:kGAIDescription value:<screenName> on the
|
||||
GAITracker instance.
|
||||
|
||||
This method is deprecated. Use createScreenView instead.
|
||||
*/
|
||||
+ (GAIDictionaryBuilder *)createAppView;
|
||||
|
||||
/*!
|
||||
Returns a GAIDictionaryBuilder object with parameters specific to a screenview
|
||||
hit.
|
||||
|
||||
Note that using this method will not set the screen name for followon hits. To
|
||||
do that you need to call set:kGAIDescription value:<screenName> on the
|
||||
GAITracker instance.
|
||||
*/
|
||||
+ (GAIDictionaryBuilder *)createScreenView;
|
||||
|
||||
/*!
|
||||
Returns a GAIDictionaryBuilder object with parameters specific to an event hit.
|
||||
*/
|
||||
+ (GAIDictionaryBuilder *)createEventWithCategory:(NSString *)category
|
||||
action:(NSString *)action
|
||||
label:(NSString *)label
|
||||
value:(NSNumber *)value;
|
||||
|
||||
/*!
|
||||
Returns a GAIDictionaryBuilder object with parameters specific to an exception
|
||||
hit.
|
||||
*/
|
||||
+ (GAIDictionaryBuilder *)createExceptionWithDescription:(NSString *)description
|
||||
withFatal:(NSNumber *)fatal;
|
||||
|
||||
/*!
|
||||
Returns a GAIDictionaryBuilder object with parameters specific to an item hit.
|
||||
*/
|
||||
+ (GAIDictionaryBuilder *)createItemWithTransactionId:(NSString *)transactionId
|
||||
name:(NSString *)name
|
||||
sku:(NSString *)sku
|
||||
category:(NSString *)category
|
||||
price:(NSNumber *)price
|
||||
quantity:(NSNumber *)quantity
|
||||
currencyCode:(NSString *)currencyCode;
|
||||
|
||||
/*!
|
||||
Returns a GAIDictionaryBuilder object with parameters specific to a social hit.
|
||||
*/
|
||||
+ (GAIDictionaryBuilder *)createSocialWithNetwork:(NSString *)network
|
||||
action:(NSString *)action
|
||||
target:(NSString *)target;
|
||||
|
||||
/*!
|
||||
Returns a GAIDictionaryBuilder object with parameters specific to a timing hit.
|
||||
*/
|
||||
+ (GAIDictionaryBuilder *)createTimingWithCategory:(NSString *)category
|
||||
interval:(NSNumber *)intervalMillis
|
||||
name:(NSString *)name
|
||||
label:(NSString *)label;
|
||||
|
||||
/*!
|
||||
Returns a GAIDictionaryBuilder object with parameters specific to a transaction
|
||||
hit.
|
||||
*/
|
||||
+ (GAIDictionaryBuilder *)createTransactionWithId:(NSString *)transactionId
|
||||
affiliation:(NSString *)affiliation
|
||||
revenue:(NSNumber *)revenue
|
||||
tax:(NSNumber *)tax
|
||||
shipping:(NSNumber *)shipping
|
||||
currencyCode:(NSString *)currencyCode;
|
||||
|
||||
/*!
|
||||
Set the product action field for this hit.
|
||||
*/
|
||||
- (GAIDictionaryBuilder *)setProductAction:(GAIEcommerceProductAction *)productAction;
|
||||
|
||||
/*!
|
||||
Adds a product to this hit.
|
||||
*/
|
||||
- (GAIDictionaryBuilder *)addProduct:(GAIEcommerceProduct *)product;
|
||||
|
||||
/*!
|
||||
Add a product impression to this hit.
|
||||
*/
|
||||
- (GAIDictionaryBuilder *)addProductImpression:(GAIEcommerceProduct *)product
|
||||
impressionList:(NSString *)name;
|
||||
|
||||
/*!
|
||||
Add a promotion to this hit.
|
||||
*/
|
||||
- (GAIDictionaryBuilder *)addPromotion:(GAIEcommercePromotion *)promotion;
|
||||
@end
|
|
@ -1,123 +0,0 @@
|
|||
/*!
|
||||
@header GAIEcommerceFields.h
|
||||
@abstract Google Analytics iOS SDK Ecommerce Hit Format Header
|
||||
@copyright Copyright 2014 Google Inc. All rights reserved.
|
||||
*/
|
||||
|
||||
#import <Foundation/Foundation.h>
|
||||
|
||||
/*!
|
||||
This class provides several fields and methods useful as wire format parameters for
|
||||
Enhanced Ecommerce. See the online developer guides for Enhanced Ecommerce for details
|
||||
on how to use the Enhanced Ecommerce features.
|
||||
*/
|
||||
|
||||
// Enhanced Ecommerce Product fields
|
||||
extern NSString *const kGAIProductId;
|
||||
extern NSString *const kGAIProductName;
|
||||
extern NSString *const kGAIProductBrand;
|
||||
extern NSString *const kGAIProductCategory;
|
||||
extern NSString *const kGAIProductVariant;
|
||||
extern NSString *const kGAIProductPrice;
|
||||
extern NSString *const kGAIProductQuantity;
|
||||
extern NSString *const kGAIProductCouponCode;
|
||||
extern NSString *const kGAIProductPosition;
|
||||
|
||||
extern NSString *const kGAIProductAction;
|
||||
|
||||
// product action values
|
||||
extern NSString *const kGAIPADetail;
|
||||
extern NSString *const kGAIPAClick;
|
||||
extern NSString *const kGAIPAAdd;
|
||||
extern NSString *const kGAIPARemove;
|
||||
extern NSString *const kGAIPACheckout;
|
||||
extern NSString *const kGAIPACheckoutOption;
|
||||
extern NSString *const kGAIPAPurchase;
|
||||
extern NSString *const kGAIPARefund;
|
||||
|
||||
// product action fields
|
||||
// used for 'purchase' and 'refund' actions
|
||||
extern NSString *const kGAIPATransactionId;
|
||||
extern NSString *const kGAIPAAffiliation;
|
||||
extern NSString *const kGAIPARevenue;
|
||||
extern NSString *const kGAIPATax;
|
||||
extern NSString *const kGAIPAShipping;
|
||||
extern NSString *const kGAIPACouponCode;
|
||||
// used for 'checkout' action
|
||||
extern NSString *const kGAICheckoutStep;
|
||||
extern NSString *const kGAICheckoutOption;
|
||||
// used for 'detail' and 'click' actions
|
||||
extern NSString *const kGAIProductActionList;
|
||||
extern NSString *const kGAIProductListSource;
|
||||
|
||||
// Enhanced Ecommerce Impressions fields
|
||||
extern NSString *const kGAIImpressionName;
|
||||
extern NSString *const kGAIImpressionProduct;
|
||||
extern NSString *const kGAIImpressionProductId;
|
||||
extern NSString *const kGAIImpressionProductName;
|
||||
extern NSString *const kGAIImpressionProductBrand;
|
||||
extern NSString *const kGAIImpressionProductCategory;
|
||||
extern NSString *const kGAIImpressionProductVariant;
|
||||
extern NSString *const kGAIImpressionProductPosition;
|
||||
extern NSString *const kGAIImpressionProductPrice;
|
||||
|
||||
// Enhanced Ecommerce Promotions fields
|
||||
extern NSString *const kGAIPromotionId;
|
||||
extern NSString *const kGAIPromotionName;
|
||||
extern NSString *const kGAIPromotionCreative;
|
||||
extern NSString *const kGAIPromotionPosition;
|
||||
|
||||
// Promotion actions
|
||||
extern NSString *const kGAIPromotionAction;
|
||||
extern NSString *const kGAIPromotionView;
|
||||
extern NSString *const kGAIPromotionClick;
|
||||
|
||||
@interface GAIEcommerceFields : NSObject
|
||||
|
||||
/*!
|
||||
Generates an enhanced ecommerce product field. Note that field names generated by
|
||||
customDimensionForIndex and customMetricForIndex can be used as suffixes.
|
||||
|
||||
@param index the index of the product
|
||||
@param suffix the product field suffix (such as kGAIProductPrice).
|
||||
|
||||
@return an NSString representing the product field parameter
|
||||
*/
|
||||
+ (NSString *)productFieldForIndex:(NSUInteger)index suffix:(NSString *)suffix;
|
||||
|
||||
/*!
|
||||
Genrates an enhanced ecommerce impression list field name with an index. The return value of
|
||||
this method should also be used as input to the productImpressionForList method below.
|
||||
|
||||
@param index the index of the impression list
|
||||
|
||||
@return an NSString representing the impression list parameter
|
||||
*/
|
||||
+ (NSString *)impressionListForIndex:(NSUInteger)index;
|
||||
|
||||
/*!
|
||||
Generates an enhanced ecommerce product impression field with the impression list, product index
|
||||
and product suffix as parameters. The output of the method impressionListForIndex above should be
|
||||
used as the input list for this method. The output of customDimensionForIndex and
|
||||
customMetricForIndex can be used as suffixes.
|
||||
|
||||
@param list the impression list for this product impression
|
||||
@param index the index of this product in the impression list
|
||||
@param suffix the product impression suffix for this field
|
||||
|
||||
@return an NSString representing this product impression field parameter
|
||||
*/
|
||||
+ (NSString *)productImpressionForList:(NSString *)list
|
||||
index:(NSUInteger)index
|
||||
suffix:(NSString *)Suffix;
|
||||
|
||||
/*!
|
||||
Generates an enhanced ecommerce promotion field with an index and suffix.
|
||||
|
||||
@param index the index of the promotion
|
||||
@param suffix the promotion suffix (such as kGAIPromotionId)
|
||||
|
||||
@return an NSString representing this promotion field paramter
|
||||
*/
|
||||
+ (NSString *)promotionForIndex:(NSUInteger)index suffix:(NSString *)suffix;
|
||||
@end
|
|
@ -1,102 +0,0 @@
|
|||
/*!
|
||||
@header GAIEcommerceProduct.h
|
||||
@abstract Google Analytics iOS SDK Hit Format Header
|
||||
@copyright Copyright 2014 Google Inc. All rights reserved.
|
||||
*/
|
||||
|
||||
#import <Foundation/Foundation.h>
|
||||
|
||||
/*!
|
||||
* Class to construct product related information for a Google Analytics beacon. Use this class to
|
||||
* report information about products sold by merchants or impressions of products seen by users.
|
||||
* Instances of this class can be associated with both Product Actions and Product
|
||||
* Impression Lists.
|
||||
* <br>
|
||||
* Typical usage:
|
||||
* <code>
|
||||
* [tracker set:kGAIScreenName value:@"MyScreen"];
|
||||
* GAIDictionaryBuilder *builder = [GAIDictionaryBuilder createScreenView];
|
||||
* GAIEcommerceProduct *product = [[GAIEcommerceProduct alloc] init];
|
||||
* [product setId:@""PID-1234""];
|
||||
* [product setName:@"Space Monkeys!"];
|
||||
* [product setPrice:@100];
|
||||
* [product setQuantity:@2];
|
||||
* [builder addProductImpression:product impressionList:@"listName"];
|
||||
* [tracker send:[builder build]];
|
||||
* </code>
|
||||
*/
|
||||
@interface GAIEcommerceProduct : NSObject
|
||||
|
||||
/*!
|
||||
Sets the id that is used to identify a product in GA reports.
|
||||
*/
|
||||
- (GAIEcommerceProduct *)setId:(NSString *)productId;
|
||||
|
||||
/*!
|
||||
Sets the name that is used to indentify the product in GA reports.
|
||||
*/
|
||||
- (GAIEcommerceProduct *)setName:(NSString *)productName;
|
||||
|
||||
/*!
|
||||
Sets the brand associated with the product in GA reports.
|
||||
*/
|
||||
- (GAIEcommerceProduct *)setBrand:(NSString *)productBrand;
|
||||
|
||||
/*!
|
||||
Sets the category associated with the product in GA reports.
|
||||
*/
|
||||
- (GAIEcommerceProduct *)setCategory:(NSString *)productCategory;
|
||||
|
||||
/*!
|
||||
Sets the variant of the product.
|
||||
*/
|
||||
- (GAIEcommerceProduct *)setVariant:(NSString *)productVariant;
|
||||
|
||||
/*!
|
||||
Sets the price of the product.
|
||||
*/
|
||||
- (GAIEcommerceProduct *)setPrice:(NSNumber *)productPrice;
|
||||
|
||||
/*!
|
||||
Sets the quantity of the product. This field is usually not used with product impressions.
|
||||
*/
|
||||
- (GAIEcommerceProduct *)setQuantity:(NSNumber *)productQuantity;
|
||||
|
||||
/*!
|
||||
Sets the coupon code associated with the product. This field is usually not used with product
|
||||
impressions.
|
||||
*/
|
||||
- (GAIEcommerceProduct *)setCouponCode:(NSString *)productCouponCode;
|
||||
|
||||
/*!
|
||||
Sets the position of the product on the screen/product impression list, etc.
|
||||
*/
|
||||
- (GAIEcommerceProduct *)setPosition:(NSNumber *)productPosition;
|
||||
|
||||
/*!
|
||||
Sets the custom dimension associated with this product.
|
||||
*/
|
||||
- (GAIEcommerceProduct *)setCustomDimension:(NSUInteger)index value:(NSString *)value;
|
||||
|
||||
/*!
|
||||
Sets the custom metric associated with this product.
|
||||
*/
|
||||
- (GAIEcommerceProduct *)setCustomMetric:(NSUInteger)index value:(NSNumber *)value;
|
||||
|
||||
/*!
|
||||
Builds an NSDictionary of fields stored in this instance suitable for a product action. The
|
||||
index parameter is the index of this product in the product action list.
|
||||
<br>
|
||||
Normally, users will have no need to call this method.
|
||||
*/
|
||||
- (NSDictionary *)buildWithIndex:(NSUInteger)index;
|
||||
|
||||
/*!
|
||||
Builds an NSDictionary of fields stored in this instance suitable for an impression list. The
|
||||
lIndex parameter is the index of the product impression list while the index parameter is the
|
||||
index of this product in that impression list.
|
||||
<br>
|
||||
Normally, users will have no need to call this method.
|
||||
*/
|
||||
- (NSDictionary *)buildWithListIndex:(NSUInteger)lIndex index:(NSUInteger)index;
|
||||
@end
|
|
@ -1,107 +0,0 @@
|
|||
/*!
|
||||
@header GAIProductAction.h
|
||||
@abstract Google Analytics iOS SDK Hit Format Header
|
||||
@copyright Copyright 2014 Google Inc. All rights reserved.
|
||||
*/
|
||||
|
||||
#import <Foundation/Foundation.h>
|
||||
|
||||
/*!
|
||||
* Class to construct transaction/checkout or other product interaction related information for a
|
||||
* Google Analytics hit. Use this class to report information about products sold, viewed or
|
||||
* refunded. This class is intended to be used with GAIDictionaryBuilder.
|
||||
* <br>
|
||||
* Typical usage:
|
||||
* <code>
|
||||
* [tracker set:kGAIScreenName value:@"MyScreen"];
|
||||
* GAIDictionaryBuilder *builder = [GAIDictionaryBuilder createScreenView];
|
||||
* GAIEcommerceProductAction *action = [[GAIEcommerceProductAction alloc] init];
|
||||
* [action setAction:kGAIPAPurchase];
|
||||
* [action setTransactionId:@"TT-1234"];
|
||||
* [action setRevenue:@3.14];
|
||||
* [action setCouponCode:@"EXTRA100"];
|
||||
* [builder setProductAction:action];
|
||||
* GAIEcommerceProduct *product = [[GAIEcommerceProduct alloc] init];
|
||||
* [product setId:@""PID-1234""];
|
||||
* [product setName:@"Space Monkeys!"];
|
||||
* [product setPrice:@100];
|
||||
* [product setQuantity:@2];
|
||||
* [builder addProduct:product];
|
||||
* [tracker send:[builder build]];
|
||||
* </code>
|
||||
*/
|
||||
@interface GAIEcommerceProductAction : NSObject
|
||||
|
||||
/*!
|
||||
Sets the product action field for this product action. Valid values can be found in
|
||||
GAIEcommerceFields.h under "product action values".
|
||||
*/
|
||||
- (GAIEcommerceProductAction *)setAction:(NSString *)productAction;
|
||||
|
||||
/*!
|
||||
The unique id associated with the transaction. This value is used for kGAIPAPurchase and
|
||||
kGAIPARefund product actions.
|
||||
*/
|
||||
- (GAIEcommerceProductAction *)setTransactionId:(NSString *)transactionId;
|
||||
|
||||
/*!
|
||||
Sets the transaction's affiliation value. This value is used for kGAIPAPurchase and
|
||||
kGAIPARefund product actions.
|
||||
*/
|
||||
- (GAIEcommerceProductAction *)setAffiliation:(NSString *)affiliation;
|
||||
|
||||
/*!
|
||||
Sets the transaction's total revenue. This value is used for kGAIPAPurchase and kGAIPARefund
|
||||
product actions.
|
||||
*/
|
||||
- (GAIEcommerceProductAction *)setRevenue:(NSNumber *)revenue;
|
||||
|
||||
/*!
|
||||
Sets the transaction's total tax. This value is used for kGAIPAPurchase and kGAIPARefund
|
||||
product actions.
|
||||
*/
|
||||
- (GAIEcommerceProductAction *)setTax:(NSNumber *)tax;
|
||||
|
||||
/*!
|
||||
Sets the transaction's total shipping costs. This value is used for kGAIPAPurchase and
|
||||
kGAIPARefund product actions.
|
||||
*/
|
||||
- (GAIEcommerceProductAction *)setShipping:(NSNumber *)shipping;
|
||||
|
||||
/*!
|
||||
Sets the coupon code used in this transaction. This value is used for kGAIPAPurchase and
|
||||
kGAIPARefund product actions.
|
||||
*/
|
||||
- (GAIEcommerceProductAction *)setCouponCode:(NSString *)couponCode;
|
||||
|
||||
/*!
|
||||
Sets the checkout process's progress. This value is used for kGAICheckout and
|
||||
kGAICheckoutOptions product actions.
|
||||
*/
|
||||
- (GAIEcommerceProductAction *)setCheckoutStep:(NSNumber *)checkoutStep;
|
||||
|
||||
/*!
|
||||
Sets the option associated with the checkout. This value is used for kGAICheckout and
|
||||
kGAICheckoutOptions product actions.
|
||||
*/
|
||||
- (GAIEcommerceProductAction *)setCheckoutOption:(NSString *)checkoutOption;
|
||||
|
||||
/*!
|
||||
Sets the list name associated with the products in Google Analytics beacons. This value is
|
||||
used in kGAIPADetail and kGAIPAClick product actions.
|
||||
*/
|
||||
- (GAIEcommerceProductAction *)setProductActionList:(NSString *)productActionList;
|
||||
|
||||
/*!
|
||||
Sets the list source name associated with the products in Google Analytics beacons. This value
|
||||
is used in kGAIPADetail and kGAIPAClick product actions.
|
||||
*/
|
||||
- (GAIEcommerceProductAction *)setProductListSource:(NSString *)productListSource;
|
||||
|
||||
/*!
|
||||
Builds an NSDictionary of fields stored in this instance representing this product action.
|
||||
<br>
|
||||
Normally, users will have no need to call this method.
|
||||
*/
|
||||
- (NSDictionary *)build;
|
||||
@end
|
|
@ -1,54 +0,0 @@
|
|||
/*!
|
||||
@header GAIEcommercePromotion.h
|
||||
@abstract Google Analytics iOS SDK Hit Format Header
|
||||
@copyright Copyright 2014 Google Inc. All rights reserved.
|
||||
*/
|
||||
|
||||
#import <Foundation/Foundation.h>
|
||||
|
||||
/*!
|
||||
* Class to construct promotion related fields for Google Analytics hits. The fields from this class
|
||||
* can be used to represent internal promotions that run within an app, such as banners, banner ads
|
||||
* etc.
|
||||
*
|
||||
* Typical usage:
|
||||
* <code>
|
||||
* GAIDictionaryBuilder *builder = [GAIDictionaryBuilder createScreenView];
|
||||
* GAIEcommercePromotion *promotion = [[GAIEcommercePromotion alloc] init];
|
||||
* [promotion setId:@"PROMO-ID1234"];
|
||||
* [promotion setName:@"Home screen banner"];
|
||||
* [builder set:kGAIPromotionClick forKey:kGAIPromotionAction];
|
||||
* [builder addPromotion:promotion];
|
||||
* [tracker send:builder.build]];
|
||||
* </code>
|
||||
*/
|
||||
@interface GAIEcommercePromotion : NSObject
|
||||
|
||||
/*!
|
||||
Sets the id that is used to identify a promotion in GA reports.
|
||||
*/
|
||||
- (GAIEcommercePromotion *)setId:(NSString *)pid;
|
||||
|
||||
/*!
|
||||
Sets the name that is used to identify a promotion in GA reports.
|
||||
*/
|
||||
- (GAIEcommercePromotion *)setName:(NSString *)name;
|
||||
|
||||
/*!
|
||||
Sets the name of the creative associated with the promotion.
|
||||
*/
|
||||
- (GAIEcommercePromotion *)setCreative:(NSString *)creative;
|
||||
|
||||
/*!
|
||||
Sets the position of the promotion.
|
||||
*/
|
||||
- (GAIEcommercePromotion *)setPosition:(NSString *)position;
|
||||
|
||||
/*!
|
||||
Builds an NSDictionary of fields stored in this instance. The index parameter is the
|
||||
index of this promotion in that promotion list.
|
||||
<br>
|
||||
Normally, users will have no need to call this method.
|
||||
*/
|
||||
- (NSDictionary *)buildWithIndex:(NSUInteger)index;
|
||||
@end
|
|
@ -1,129 +0,0 @@
|
|||
/*!
|
||||
@header GAIFields.h
|
||||
@abstract Google Analytics iOS SDK Hit Format Header
|
||||
@copyright Copyright 2013 Google Inc. All rights reserved.
|
||||
*/
|
||||
|
||||
#import <Foundation/Foundation.h>
|
||||
|
||||
/*!
|
||||
These fields can be used for the wire format parameter names required by
|
||||
the |GAITracker| get, set and send methods as well as the set methods in the
|
||||
|GAIDictionaryBuilder| class.
|
||||
*/
|
||||
extern NSString *const kGAIUseSecure;
|
||||
|
||||
extern NSString *const kGAIHitType;
|
||||
extern NSString *const kGAITrackingId;
|
||||
extern NSString *const kGAIClientId;
|
||||
extern NSString *const kGAIAnonymizeIp;
|
||||
extern NSString *const kGAISessionControl;
|
||||
extern NSString *const kGAIScreenResolution;
|
||||
extern NSString *const kGAIViewportSize;
|
||||
extern NSString *const kGAIEncoding;
|
||||
extern NSString *const kGAIScreenColors;
|
||||
extern NSString *const kGAILanguage;
|
||||
extern NSString *const kGAIJavaEnabled;
|
||||
extern NSString *const kGAIFlashVersion;
|
||||
extern NSString *const kGAINonInteraction;
|
||||
extern NSString *const kGAIReferrer;
|
||||
extern NSString *const kGAILocation;
|
||||
extern NSString *const kGAIHostname;
|
||||
extern NSString *const kGAIPage;
|
||||
extern NSString *const kGAIDescription; // synonym for kGAIScreenName
|
||||
extern NSString *const kGAIScreenName; // synonym for kGAIDescription
|
||||
extern NSString *const kGAITitle;
|
||||
extern NSString *const kGAIAdMobHitId;
|
||||
extern NSString *const kGAIAppName;
|
||||
extern NSString *const kGAIAppVersion;
|
||||
extern NSString *const kGAIAppId;
|
||||
extern NSString *const kGAIAppInstallerId;
|
||||
extern NSString *const kGAIUserId;
|
||||
|
||||
extern NSString *const kGAIEventCategory;
|
||||
extern NSString *const kGAIEventAction;
|
||||
extern NSString *const kGAIEventLabel;
|
||||
extern NSString *const kGAIEventValue;
|
||||
|
||||
extern NSString *const kGAISocialNetwork;
|
||||
extern NSString *const kGAISocialAction;
|
||||
extern NSString *const kGAISocialTarget;
|
||||
|
||||
extern NSString *const kGAITransactionId;
|
||||
extern NSString *const kGAITransactionAffiliation;
|
||||
extern NSString *const kGAITransactionRevenue;
|
||||
extern NSString *const kGAITransactionShipping;
|
||||
extern NSString *const kGAITransactionTax;
|
||||
extern NSString *const kGAICurrencyCode;
|
||||
|
||||
extern NSString *const kGAIItemPrice;
|
||||
extern NSString *const kGAIItemQuantity;
|
||||
extern NSString *const kGAIItemSku;
|
||||
extern NSString *const kGAIItemName;
|
||||
extern NSString *const kGAIItemCategory;
|
||||
|
||||
extern NSString *const kGAICampaignSource;
|
||||
extern NSString *const kGAICampaignMedium;
|
||||
extern NSString *const kGAICampaignName;
|
||||
extern NSString *const kGAICampaignKeyword;
|
||||
extern NSString *const kGAICampaignContent;
|
||||
extern NSString *const kGAICampaignId;
|
||||
|
||||
extern NSString *const kGAITimingCategory;
|
||||
extern NSString *const kGAITimingVar;
|
||||
extern NSString *const kGAITimingValue;
|
||||
extern NSString *const kGAITimingLabel;
|
||||
|
||||
extern NSString *const kGAIExDescription;
|
||||
extern NSString *const kGAIExFatal;
|
||||
|
||||
extern NSString *const kGAISampleRate;
|
||||
|
||||
extern NSString *const kGAIIdfa;
|
||||
extern NSString *const kGAIAdTargetingEnabled;
|
||||
|
||||
// hit types
|
||||
extern NSString *const kGAIAppView; // deprecated, use kGAIScreenView instead
|
||||
extern NSString *const kGAIScreenView;
|
||||
extern NSString *const kGAIEvent;
|
||||
extern NSString *const kGAISocial;
|
||||
extern NSString *const kGAITransaction;
|
||||
extern NSString *const kGAIItem;
|
||||
extern NSString *const kGAIException;
|
||||
extern NSString *const kGAITiming;
|
||||
|
||||
/*!
|
||||
This class provides several fields and methods useful as wire format parameter
|
||||
names. The methods are used for wire format parameter names that are indexed.
|
||||
*/
|
||||
|
||||
@interface GAIFields : NSObject
|
||||
|
||||
/*!
|
||||
Generates the correct parameter name for a content group with an index.
|
||||
|
||||
@param index the index of the content group.
|
||||
|
||||
@return an NSString representing the content group parameter for the index.
|
||||
*/
|
||||
+ (NSString *)contentGroupForIndex:(NSUInteger)index;
|
||||
|
||||
/*!
|
||||
Generates the correct parameter name for a custon dimension with an index.
|
||||
|
||||
@param index the index of the custom dimension.
|
||||
|
||||
@return an NSString representing the custom dimension parameter for the index.
|
||||
*/
|
||||
+ (NSString *)customDimensionForIndex:(NSUInteger)index;
|
||||
|
||||
/*!
|
||||
Generates the correct parameter name for a custom metric with an index.
|
||||
|
||||
@param index the index of the custom metric.
|
||||
|
||||
@return an NSString representing the custom metric parameter for the index.
|
||||
*/
|
||||
+ (NSString *)customMetricForIndex:(NSUInteger)index;
|
||||
|
||||
@end
|
|
@ -1,49 +0,0 @@
|
|||
/*!
|
||||
@header GAILogger.h
|
||||
@abstract Google Analytics iOS SDK Source
|
||||
@copyright Copyright 2011 Google Inc. All rights reserved.
|
||||
*/
|
||||
|
||||
#import <Foundation/Foundation.h>
|
||||
|
||||
typedef NS_ENUM(NSUInteger, GAILogLevel) {
|
||||
kGAILogLevelNone = 0,
|
||||
kGAILogLevelError = 1,
|
||||
kGAILogLevelWarning = 2,
|
||||
kGAILogLevelInfo = 3,
|
||||
kGAILogLevelVerbose = 4
|
||||
};
|
||||
|
||||
/*!
|
||||
Protocol to be used for logging debug and informational messages from the SDK.
|
||||
Implementations of this protocol can be provided to the |GAI| class,
|
||||
to be used as the logger by the SDK. See the |logger| property in GAI.h.
|
||||
*/
|
||||
@protocol GAILogger<NSObject>
|
||||
@required
|
||||
|
||||
/*!
|
||||
Only messages of |logLevel| and below are logged.
|
||||
*/
|
||||
@property (nonatomic, assign) GAILogLevel logLevel;
|
||||
|
||||
/*!
|
||||
Logs message with log level |kGAILogLevelVerbose|.
|
||||
*/
|
||||
- (void)verbose:(NSString *)message;
|
||||
|
||||
/*!
|
||||
Logs message with log level |kGAILogLevelInfo|.
|
||||
*/
|
||||
- (void)info:(NSString *)message;
|
||||
|
||||
/*!
|
||||
Logs message with log level |kGAILogLevelWarning|.
|
||||
*/
|
||||
- (void)warning:(NSString *)message;
|
||||
|
||||
/*!
|
||||
Logs message with log level |kGAILogLevelError|.
|
||||
*/
|
||||
- (void)error:(NSString *)message;
|
||||
@end
|
|
@ -1,34 +0,0 @@
|
|||
/*!
|
||||
@header GAITrackedViewController.h
|
||||
@abstract Google Analytics for iOS Tracked View Controller Header
|
||||
@version 2.0
|
||||
@copyright Copyright 2012 Google Inc. All rights reserved.
|
||||
*/
|
||||
|
||||
#import <Foundation/Foundation.h>
|
||||
#import <UIKit/UIKit.h>
|
||||
|
||||
@protocol GAITracker;
|
||||
|
||||
/*!
|
||||
Extends UIViewController to generate Google Analytics appview calls
|
||||
whenever the view appears; this is done by overriding the `viewDidAppear:`
|
||||
method. The screen name must be set for any tracking calls to be made.
|
||||
|
||||
By default, this will use [GAI defaultTracker] for tracking calls, but one can
|
||||
override this by setting the tracker property.
|
||||
*/
|
||||
@interface GAITrackedViewController : UIViewController
|
||||
|
||||
/*!
|
||||
The tracker on which view tracking calls are be made, or `nil`, in which case
|
||||
[GAI defaultTracker] will be used.
|
||||
*/
|
||||
@property(nonatomic, assign) id<GAITracker> tracker;
|
||||
/*!
|
||||
The screen name, for purposes of Google Analytics tracking. If this is `nil`,
|
||||
no tracking calls will be made.
|
||||
*/
|
||||
@property(nonatomic, copy) NSString *screenName;
|
||||
|
||||
@end
|
|
@ -1,58 +0,0 @@
|
|||
/*!
|
||||
@header GAITracker.h
|
||||
@abstract Google Analytics iOS SDK Tracker Header
|
||||
@version 3.0
|
||||
@copyright Copyright 2013 Google Inc. All rights reserved.
|
||||
*/
|
||||
|
||||
#import <Foundation/Foundation.h>
|
||||
|
||||
/*!
|
||||
Google Analytics tracking interface. Obtain instances of this interface from
|
||||
[GAI trackerWithTrackingId:] to track screens, events, transactions, timing,
|
||||
and exceptions. The implementation of this interface is thread-safe, and no
|
||||
calls are expected to block or take a long time. All network and disk activity
|
||||
will take place in the background.
|
||||
*/
|
||||
@protocol GAITracker<NSObject>
|
||||
|
||||
/*!
|
||||
Name of this tracker.
|
||||
*/
|
||||
@property(nonatomic, readonly) NSString *name;
|
||||
|
||||
/*!
|
||||
Allow collection of IDFA and related fields if set to true. Default is false.
|
||||
*/
|
||||
@property(nonatomic) BOOL allowIDFACollection;
|
||||
|
||||
/*!
|
||||
Set a tracking parameter.
|
||||
|
||||
@param parameterName The parameter name.
|
||||
|
||||
@param value The value to set for the parameter. If this is nil, the
|
||||
value for the parameter will be cleared.
|
||||
*/
|
||||
- (void)set:(NSString *)parameterName
|
||||
value:(NSString *)value;
|
||||
|
||||
/*!
|
||||
Get a tracking parameter.
|
||||
|
||||
@param parameterName The parameter name.
|
||||
|
||||
@returns The parameter value, or nil if no value for the given parameter is
|
||||
set.
|
||||
*/
|
||||
- (NSString *)get:(NSString *)parameterName;
|
||||
|
||||
/*!
|
||||
Queue tracking information with the given parameter values.
|
||||
|
||||
@param parameters A map from parameter names to parameter values which will be
|
||||
set just for this piece of tracking information, or nil for none.
|
||||
*/
|
||||
- (void)send:(NSDictionary *)parameters;
|
||||
|
||||
@end
|
Binary file not shown.
Binary file not shown.
|
@ -1,22 +0,0 @@
|
|||
//
|
||||
// Created by Igor Glotov on 05/08/14.
|
||||
// Copyright (c) 2014 Mailru Group. All rights reserved.
|
||||
// MyTracker, version 1.0.9
|
||||
|
||||
#import <Foundation/Foundation.h>
|
||||
#import "MRMyTracker.h"
|
||||
|
||||
|
||||
@interface MCMyTracker : NSObject
|
||||
|
||||
+ (BOOL)enableLogging;
|
||||
|
||||
+ (void)setEnableLogging:(BOOL)enable;
|
||||
|
||||
+ (MRTracker *)initDefaultTrackerWithAppId:(NSString *)appId andParams:(MRTrackerParams *)params;
|
||||
|
||||
+ (MRTracker *)initDefaultTrackerWithAppId:(NSString *)appId;
|
||||
|
||||
+ (MRTracker *)getDefaultTracker;
|
||||
|
||||
@end
|
|
@ -1,21 +0,0 @@
|
|||
//
|
||||
// Created by Igor Glotov on 23/07/14.
|
||||
// Copyright (c) 2014 Mailru Group. All rights reserved.
|
||||
//
|
||||
|
||||
#import <Foundation/Foundation.h>
|
||||
|
||||
|
||||
@interface MRAbstractDataProvider : NSObject
|
||||
|
||||
|
||||
- (void)collectData;
|
||||
|
||||
- (NSDictionary *)data;
|
||||
|
||||
- (void)addParam:(NSString *)value forKey:(NSString *)key;
|
||||
|
||||
- (BOOL)hasData;
|
||||
|
||||
- (NSUInteger)dataCount;
|
||||
@end
|
|
@ -1,34 +0,0 @@
|
|||
//
|
||||
// Created by Igor Glotov on 22/08/14.
|
||||
// Copyright (c) 2014 Mail.ru Group. All rights reserved.
|
||||
// MyTracker, version 1.0.9
|
||||
|
||||
#import <Foundation/Foundation.h>
|
||||
#import "MRAbstractDataProvider.h"
|
||||
|
||||
@interface MRCustomParamsProvider : MRAbstractDataProvider
|
||||
|
||||
- (void)setLanguage:(NSString *)lang;
|
||||
|
||||
- (void)setEmail:(NSString *)email;
|
||||
|
||||
- (void)setPhone:(NSString *)phone;
|
||||
|
||||
- (void)setIcqId:(NSString *)icqId;
|
||||
|
||||
- (void)setOkId:(NSString *)okId;
|
||||
|
||||
- (void)setAge:(NSNumber *)age;
|
||||
|
||||
/**
|
||||
* @param gender Пол пользователя, 0 - пол неизвестен, 1 - мужской, 2 - женский
|
||||
*/
|
||||
- (void)setGender:(NSNumber *)gender;
|
||||
|
||||
- (void)setMRGSAppId:(NSString *)mrgsAppId;
|
||||
|
||||
- (void)setMRGSUserId:(NSString *)mrgsUserId;
|
||||
|
||||
- (void)setMRGSDeviceId:(NSString *)mrgsDeviceId;
|
||||
|
||||
@end
|
|
@ -1,28 +0,0 @@
|
|||
//
|
||||
// MRMyTracker.h
|
||||
// MRMyTracker
|
||||
//
|
||||
// Created by Igor Glotov on 22/07/14.
|
||||
// Copyright (c) 2014 Mailru Group. All rights reserved.
|
||||
// MyTracker, version 1.0.8
|
||||
|
||||
#import <Foundation/Foundation.h>
|
||||
#import "MRTracker.h"
|
||||
|
||||
extern NSString * const MRMyTrackerVersion;
|
||||
|
||||
@class MRTracker;
|
||||
@class MRTrackerParams;
|
||||
|
||||
@interface MRMyTracker : NSObject
|
||||
|
||||
+ (BOOL)enableLogging;
|
||||
|
||||
+ (void)setEnableLogging:(BOOL)enable;
|
||||
|
||||
+ (MRTracker *)initDefaultTrackerWithAppId:(NSString *)appId andParams:(MRTrackerParams *)params;
|
||||
|
||||
+ (MRTracker *)initDefaultTrackerWithAppId:(NSString *)appId;
|
||||
|
||||
+ (MRTracker *)getDefaultTracker;
|
||||
@end
|
|
@ -1,18 +0,0 @@
|
|||
//
|
||||
// Created by Igor Glotov on 22/07/14.
|
||||
// Copyright (c) 2014 Mailru Group. All rights reserved.
|
||||
// MyTracker, version 1.0.9
|
||||
|
||||
#import <Foundation/Foundation.h>
|
||||
|
||||
@class MRTrackerParams;
|
||||
|
||||
|
||||
@interface MRTracker : NSObject
|
||||
|
||||
- (id)initWithAppId:(NSString *)id params:(MRTrackerParams *)params host:(NSString *)host;
|
||||
|
||||
+ (BOOL)enableLogging;
|
||||
|
||||
+ (void)setEnableLogging:(BOOL)enable;
|
||||
@end
|
|
@ -1,16 +0,0 @@
|
|||
//
|
||||
// Created by Igor Glotov on 22/07/14.
|
||||
// Copyright (c) 2014 Mailru Group. All rights reserved.
|
||||
// MyTracker, version 1.0.9
|
||||
|
||||
#import <Foundation/Foundation.h>
|
||||
|
||||
@class MRCustomParamsProvider;
|
||||
|
||||
|
||||
@interface MRTrackerParams : NSObject
|
||||
|
||||
@property (nonatomic) BOOL trackAppLaunch;
|
||||
@property (strong, nonatomic) MRCustomParamsProvider * customParamsProvider;
|
||||
|
||||
@end
|
Binary file not shown.
|
@ -57,7 +57,7 @@
|
|||
|
||||
/*!
|
||||
Method to create an event item. Revenue will be calculated using (quantity * unitPrice).
|
||||
|
||||
|
||||
@param name name of the event item
|
||||
@param unitPrice unit price of the event item
|
||||
@param quantity quantity of the event item
|
||||
|
|
|
@ -15,7 +15,7 @@
|
|||
#import <CoreLocation/CoreLocation.h>
|
||||
#endif
|
||||
|
||||
#define MATVERSION @"3.5.4"
|
||||
#define MATVERSION @"3.7"
|
||||
|
||||
|
||||
#pragma mark - enumerated types
|
||||
|
@ -36,7 +36,7 @@ typedef NS_ENUM(NSInteger, MATGender)
|
|||
{
|
||||
MATGenderMale = 0, // Gender type MALE. Equals 0.
|
||||
MATGenderFemale = 1, // Gender type FEMALE. Equals 1.
|
||||
|
||||
|
||||
MAT_GENDER_MALE = MATGenderMale, // Backward-compatible alias for MATGenderMale.
|
||||
MAT_GENDER_FEMALE = MATGenderFemale // Backward-compatible alias for MATGenderFemale.
|
||||
};
|
||||
|
@ -90,23 +90,39 @@ typedef NS_ENUM(NSInteger, MATGender)
|
|||
|
||||
/*!
|
||||
Specifies that the server responses should include debug information.
|
||||
|
||||
|
||||
@warning This is only for testing. You must turn this off for release builds.
|
||||
|
||||
|
||||
@param yesorno defaults to NO.
|
||||
*/
|
||||
+ (void)setDebugMode:(BOOL)yesorno;
|
||||
|
||||
/*!
|
||||
Set to YES to allow duplicate requests to be registered with the MAT server.
|
||||
|
||||
|
||||
@warning This is only for testing. You must turn this off for release builds.
|
||||
|
||||
|
||||
@param yesorno defaults to NO.
|
||||
*/
|
||||
+ (void)setAllowDuplicateRequests:(BOOL)yesorno;
|
||||
|
||||
|
||||
#pragma mark - Behavior Flags
|
||||
/** @name Behavior Flags */
|
||||
|
||||
/*!
|
||||
Check for a deferred deeplink entry point upon app installation.
|
||||
This is safe to call at every app launch, since the function does nothing
|
||||
unless this is the first launch.
|
||||
|
||||
The timeout parameter should be set in keeping with the normal first-launch
|
||||
time and user experience of your app.
|
||||
|
||||
@param timeout If the deeplink value is not received within this timeout duration, then the deeplink will not be opened.
|
||||
*/
|
||||
+ (void)checkForDeferredDeeplinkWithTimeout:(NSTimeInterval)timeout;
|
||||
|
||||
|
||||
#pragma mark - Data Setters
|
||||
|
||||
/** @name Setter Methods */
|
||||
|
@ -358,6 +374,13 @@ typedef NS_ENUM(NSInteger, MATGender)
|
|||
*/
|
||||
+ (void)setEventAttribute5:(NSString*)value;
|
||||
|
||||
/*!
|
||||
* Set whether the MAT events should also be logged to the Facebook SDK. This flag is ignored if the Facebook SDK is not present.
|
||||
* @param logging Whether to send MAT events to FB as well
|
||||
* @param limit Whether data such as that generated through FBAppEvents and sent to Facebook should be restricted from being used for other than analytics and conversions. Defaults to NO. This value is stored on the device and persists across app launches.
|
||||
*/
|
||||
+ (void)setFacebookEventLogging:(BOOL)logging limitEventAndDataUsage:(BOOL)limit;
|
||||
|
||||
|
||||
#pragma mark - Data Getters
|
||||
|
||||
|
@ -382,6 +405,8 @@ typedef NS_ENUM(NSInteger, MATGender)
|
|||
+ (BOOL)isPayingUser;
|
||||
|
||||
|
||||
#if USE_IAD
|
||||
|
||||
#pragma mark - Show iAd advertising
|
||||
|
||||
/** @name iAd advertising */
|
||||
|
@ -398,6 +423,7 @@ typedef NS_ENUM(NSInteger, MATGender)
|
|||
*/
|
||||
+ (void)removeiAd;
|
||||
|
||||
#endif
|
||||
|
||||
#pragma mark - Measuring Sessions
|
||||
|
||||
|
@ -673,7 +699,7 @@ typedef NS_ENUM(NSInteger, MATGender)
|
|||
@param targetAppAdvertiserId The MAT advertiser ID of the target app.
|
||||
@param offerId The MAT offer ID of the target app.
|
||||
@param publisherId The MAT publisher ID of the target app.
|
||||
@param shouldRedirect Should redirect to the download url if the tracking session was
|
||||
@param shouldRedirect Should redirect to the download url if the tracking session was
|
||||
successfully created. See setRedirectUrl:.
|
||||
*/
|
||||
+ (void)startAppToAppTracking:(NSString *)targetAppPackageName
|
||||
|
@ -706,10 +732,10 @@ typedef NS_ENUM(NSInteger, MATGender)
|
|||
/*!
|
||||
Begin monitoring for an iBeacon region. Boundary-crossing events will be recorded
|
||||
by the MAT servers for event attribution.
|
||||
|
||||
|
||||
When the first region is added, the user will immediately be prompted for use of
|
||||
their location, unless they have already granted it to the app.
|
||||
|
||||
|
||||
@param UUID The region's universal unique identifier (required).
|
||||
@param nameId The region's name, as programmed into the beacon (required).
|
||||
@param majorId A subregion's major identifier (optional, send 0)
|
||||
|
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
Loading…
Add table
Reference in a new issue