diff --git a/Yep.xcodeproj/project.pbxproj b/Yep.xcodeproj/project.pbxproj index 793472d5..56ac961d 100644 --- a/Yep.xcodeproj/project.pbxproj +++ b/Yep.xcodeproj/project.pbxproj @@ -138,7 +138,6 @@ 505262121C5205AB00292C6A /* UploadAttachmentOperation.swift in Sources */ = {isa = PBXBuildFile; fileRef = 505262111C5205AB00292C6A /* UploadAttachmentOperation.swift */; }; 505262151C522A1E00292C6A /* Show.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 505262131C522A1E00292C6A /* Show.storyboard */; }; 505262171C522A3D00292C6A /* FeedConversations.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 505262161C522A3D00292C6A /* FeedConversations.storyboard */; }; - 505262241C522BAB00292C6A /* libGoogleAnalyticsServices.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 505262231C522BAB00292C6A /* libGoogleAnalyticsServices.a */; }; 50535D1A1BCD19AE002FE1A4 /* TouchClosuresView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 50535D191BCD19AE002FE1A4 /* TouchClosuresView.swift */; }; 50535D1D1BCE42BE002FE1A4 /* PickPhotosViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 50535D1C1BCE42BE002FE1A4 /* PickPhotosViewController.swift */; }; 50535D201BCE43ED002FE1A4 /* ImageCacheController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 50535D1F1BCE43ED002FE1A4 /* ImageCacheController.swift */; }; @@ -510,17 +509,6 @@ 505262111C5205AB00292C6A /* UploadAttachmentOperation.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; name = UploadAttachmentOperation.swift; path = Operations/UploadAttachmentOperation.swift; sourceTree = ""; }; 505262141C522A1E00292C6A /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/Show.storyboard; sourceTree = ""; }; 505262161C522A3D00292C6A /* FeedConversations.storyboard */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.storyboard; name = FeedConversations.storyboard; path = ViewControllers/FeedConversations/FeedConversations.storyboard; sourceTree = ""; }; - 505262191C522BAB00292C6A /* GAI.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = GAI.h; sourceTree = ""; }; - 5052621A1C522BAB00292C6A /* GAIDictionaryBuilder.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = GAIDictionaryBuilder.h; sourceTree = ""; }; - 5052621B1C522BAB00292C6A /* GAIEcommerceFields.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = GAIEcommerceFields.h; sourceTree = ""; }; - 5052621C1C522BAB00292C6A /* GAIEcommerceProduct.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = GAIEcommerceProduct.h; sourceTree = ""; }; - 5052621D1C522BAB00292C6A /* GAIEcommerceProductAction.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = GAIEcommerceProductAction.h; sourceTree = ""; }; - 5052621E1C522BAB00292C6A /* GAIEcommercePromotion.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = GAIEcommercePromotion.h; sourceTree = ""; }; - 5052621F1C522BAB00292C6A /* GAIFields.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = GAIFields.h; sourceTree = ""; }; - 505262201C522BAB00292C6A /* GAILogger.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = GAILogger.h; sourceTree = ""; }; - 505262211C522BAB00292C6A /* GAITrackedViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = GAITrackedViewController.h; sourceTree = ""; }; - 505262221C522BAB00292C6A /* GAITracker.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = GAITracker.h; sourceTree = ""; }; - 505262231C522BAB00292C6A /* libGoogleAnalyticsServices.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; path = libGoogleAnalyticsServices.a; sourceTree = ""; }; 50535D191BCD19AE002FE1A4 /* TouchClosuresView.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; name = TouchClosuresView.swift; path = Views/TouchClosures/TouchClosuresView.swift; sourceTree = ""; }; 50535D1C1BCE42BE002FE1A4 /* PickPhotosViewController.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; name = PickPhotosViewController.swift; path = ViewControllers/PickPhotos/PickPhotosViewController.swift; sourceTree = ""; }; 50535D1F1BCE43ED002FE1A4 /* ImageCacheController.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; name = ImageCacheController.swift; path = ViewControllers/PickPhotos/ImageCacheController.swift; sourceTree = ""; }; @@ -756,7 +744,6 @@ 5052620B1C51CDE600292C6A /* libz.tbd in Frameworks */, 6AC40E351C47A9060024FC63 /* libsqlite3.tbd in Frameworks */, 0AD7EA641AC3ED2A00617758 /* SystemConfiguration.framework in Frameworks */, - 505262241C522BAB00292C6A /* libGoogleAnalyticsServices.a in Frameworks */, 6AC40E311C47A8EE0024FC63 /* CoreData.framework in Frameworks */, 0AD7EA681AC3ED3600617758 /* Foundation.framework in Frameworks */, 0AAFCFF91AC8CA5B00EB0EF8 /* MobileCoreServices.framework in Frameworks */, @@ -845,7 +832,6 @@ 0A8F54AD1AB67D11004AD60E /* Yep */ = { isa = PBXGroup; children = ( - 505262181C522BAB00292C6A /* GoogleAnalytics */, 848806B21B7B0230000C5424 /* Yep.entitlements */, 0A8F54B01AB67D11004AD60E /* AppDelegate.swift */, 0AD7EA581AC3EAF300617758 /* Yep-Bridging-Header.h */, @@ -1580,24 +1566,6 @@ name = Operations; sourceTree = ""; }; - 505262181C522BAB00292C6A /* GoogleAnalytics */ = { - isa = PBXGroup; - children = ( - 505262191C522BAB00292C6A /* GAI.h */, - 5052621A1C522BAB00292C6A /* GAIDictionaryBuilder.h */, - 5052621B1C522BAB00292C6A /* GAIEcommerceFields.h */, - 5052621C1C522BAB00292C6A /* GAIEcommerceProduct.h */, - 5052621D1C522BAB00292C6A /* GAIEcommerceProductAction.h */, - 5052621E1C522BAB00292C6A /* GAIEcommercePromotion.h */, - 5052621F1C522BAB00292C6A /* GAIFields.h */, - 505262201C522BAB00292C6A /* GAILogger.h */, - 505262211C522BAB00292C6A /* GAITrackedViewController.h */, - 505262221C522BAB00292C6A /* GAITracker.h */, - 505262231C522BAB00292C6A /* libGoogleAnalyticsServices.a */, - ); - path = GoogleAnalytics; - sourceTree = ""; - }; 50535D1B1BCD19B4002FE1A4 /* TouchClosures */ = { isa = PBXGroup; children = ( diff --git a/Yep/AppDelegate.swift b/Yep/AppDelegate.swift index 963357b9..b48bc3f8 100644 --- a/Yep/AppDelegate.swift +++ b/Yep/AppDelegate.swift @@ -111,13 +111,6 @@ class AppDelegate: UIResponder, UIApplicationDelegate { } else { startShowStory() } - - - // Optional: configure GAI options. - let gai = GAI.sharedInstance() - gai.trackerWithTrackingId("UA-69805568-2") - gai.trackUncaughtExceptions = true // report uncaught exceptions - gai.logger.logLevel = GAILogLevel.Verbose // remove before app release return true } diff --git a/Yep/Configs/YepHelper.swift b/Yep/Configs/YepHelper.swift index a526272d..66aa5d61 100644 --- a/Yep/Configs/YepHelper.swift +++ b/Yep/Configs/YepHelper.swift @@ -163,21 +163,13 @@ extension UINavigationBar { } func GoogleAnalyticsTrackView(name: String) { - let tracker = GAI.sharedInstance().defaultTracker - tracker.set(kGAIScreenName, value: name) - - let builder = GAIDictionaryBuilder.createScreenView() - tracker.send(builder.build() as [NSObject : AnyObject]) + } func GoogleAnalyticsTrackEvent(action: String, label: String, value: NSNumber) { - let tracker = GAI.sharedInstance().defaultTracker - let data = GAIDictionaryBuilder.createEventWithCategory("UI Action", action: action, label: label, value: value) - tracker.send(data.build() as [NSObject : AnyObject]) + } func GoogleAnalyticsTrackSocial(network: String, action: String, target: String) { - let tracker = GAI.sharedInstance().defaultTracker - let data = GAIDictionaryBuilder.createSocialWithNetwork(network, action: action, target: target) - tracker.send(data.build() as [NSObject : AnyObject]) + } \ No newline at end of file diff --git a/Yep/GoogleAnalytics/GAI.h b/Yep/GoogleAnalytics/GAI.h deleted file mode 100644 index b0e49522..00000000 --- a/Yep/GoogleAnalytics/GAI.h +++ /dev/null @@ -1,192 +0,0 @@ -/*! - @header GAI.h - @abstract Google Analytics iOS SDK Header - @version 3.15 - @copyright Copyright 2015 Google Inc. All rights reserved. - */ - -#import - -#import "GAILogger.h" -#import "GAITrackedViewController.h" -#import "GAITracker.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 defaultTracker; - -/*! - The GAILogger to use. - */ -@property(nonatomic, retain) id 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)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)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. - - Note that calling this method with a non-nil completionHandler disables periodic dispatch. - Periodic dispatch can be reenabled by setting the dispatchInterval to a positive number when - the app resumes from the background. - - 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 the application is exiting to initiate the submission of any unsubmitted - tracking information. - - @param completionHandler The block to run after a single dispatch request. The GAIDispatchResult - param indicates whether the dispatch succeeded, had an error, or had no hits to dispatch. - */ -- (void)dispatchWithCompletionHandler:(void (^)(GAIDispatchResult result))completionHandler; -@end diff --git a/Yep/GoogleAnalytics/GAIDictionaryBuilder.h b/Yep/GoogleAnalytics/GAIDictionaryBuilder.h deleted file mode 100644 index 28418cb1..00000000 --- a/Yep/GoogleAnalytics/GAIDictionaryBuilder.h +++ /dev/null @@ -1,217 +0,0 @@ -/*! - @header GAIDictionaryBuilder.h - @abstract Google Analytics iOS SDK Hit Format Header - @copyright Copyright 2013 Google Inc. All rights reserved. - */ - -#import - -#import "GAIEcommerceProduct.h" -#import "GAIEcommerceProductAction.h" -#import "GAIEcommercePromotion.h" - -/*! - * Helper class to build a dictionary of hit parameters and values. - *
- * Examples: - * - * id t = // get a tracker. - * [t send:[[[GAIDictionaryBuilder createEventWithCategory:@"EventCategory" - * action:@"EventAction" - * label:nil - * value:nil] - * set:@"dimension1" forKey:[GAIFields customDimensionForIndex:1]] build]]; - * - * This will send an event hit type with the specified parameters - * and a custom dimension parameter. - *
- * If you want to send a parameter with all hits, set it on GAITracker directly. - * - * [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]]; - * - * You can override a value set on the tracker by adding it to the dictionary. - * - * [t set:kGAIScreenName value:@"Home"]; - * [t send:...]; - * [t send[[[GAIDictionaryBuilder createEventWithCategory:@"click" - * action:@"popup" - * label:nil - * value:nil] - * set:@"popup title" forKey:kGAIScreenName] build]]; - * - * 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. - * - * 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]; - * - */ -@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: - *
    - *
  • utm_id
  • - *
  • utm_campaign
  • - *
  • utm_content
  • - *
  • utm_medium
  • - *
  • utm_source
  • - *
  • utm_term
  • - *
  • dclid
  • - *
  • gclid
  • - *
  • gmob_t
  • - *
  • aclid
  • - *
  • anid
  • - *
- *

- * Example: - * http://my.site.com/index.html?utm_campaign=wow&utm_source=source - * utm_campaign=wow&utm_source=source. - *

- * For more information on auto-tagging, see - * http://support.google.com/googleanalytics/bin/answer.py?hl=en&answer=55590 - *

- * 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: on the - GAITracker instance. - - This method is deprecated. Use createScreenView instead. - */ -+ (GAIDictionaryBuilder *)createAppView DEPRECATED_MSG_ATTRIBUTE("Use createScreenView instead."); - -/*! - 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: 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 - impressionSource:(NSString *)source; - -/*! - Add a promotion to this hit. - */ -- (GAIDictionaryBuilder *)addPromotion:(GAIEcommercePromotion *)promotion; -@end diff --git a/Yep/GoogleAnalytics/GAIEcommerceFields.h b/Yep/GoogleAnalytics/GAIEcommerceFields.h deleted file mode 100644 index b3ba60ae..00000000 --- a/Yep/GoogleAnalytics/GAIEcommerceFields.h +++ /dev/null @@ -1,124 +0,0 @@ -/*! - @header GAIEcommerceFields.h - @abstract Google Analytics iOS SDK Ecommerce Hit Format Header - @copyright Copyright 2014 Google Inc. All rights reserved. - */ - -#import - -/*! - 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 kGAIImpressionListSource; -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 diff --git a/Yep/GoogleAnalytics/GAIEcommerceProduct.h b/Yep/GoogleAnalytics/GAIEcommerceProduct.h deleted file mode 100644 index 029f7638..00000000 --- a/Yep/GoogleAnalytics/GAIEcommerceProduct.h +++ /dev/null @@ -1,102 +0,0 @@ -/*! - @header GAIEcommerceProduct.h - @abstract Google Analytics iOS SDK Hit Format Header - @copyright Copyright 2014 Google Inc. All rights reserved. - */ - -#import - -/*! - * 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. - *
- * Typical usage: - * - * [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]]; - * - */ -@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. -
- 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. -
- Normally, users will have no need to call this method. - */ -- (NSDictionary *)buildWithListIndex:(NSUInteger)lIndex index:(NSUInteger)index; -@end diff --git a/Yep/GoogleAnalytics/GAIEcommerceProductAction.h b/Yep/GoogleAnalytics/GAIEcommerceProductAction.h deleted file mode 100644 index e3da1c15..00000000 --- a/Yep/GoogleAnalytics/GAIEcommerceProductAction.h +++ /dev/null @@ -1,107 +0,0 @@ -/*! - @header GAIProductAction.h - @abstract Google Analytics iOS SDK Hit Format Header - @copyright Copyright 2014 Google Inc. All rights reserved. - */ - -#import - -/*! - * 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. - *
- * Typical usage: - * - * [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]]; - * - */ -@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. -
- Normally, users will have no need to call this method. - */ -- (NSDictionary *)build; -@end diff --git a/Yep/GoogleAnalytics/GAIEcommercePromotion.h b/Yep/GoogleAnalytics/GAIEcommercePromotion.h deleted file mode 100644 index c7bf25af..00000000 --- a/Yep/GoogleAnalytics/GAIEcommercePromotion.h +++ /dev/null @@ -1,54 +0,0 @@ -/*! - @header GAIEcommercePromotion.h - @abstract Google Analytics iOS SDK Hit Format Header - @copyright Copyright 2014 Google Inc. All rights reserved. - */ - -#import - -/*! - * 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: - * - * 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]]; - * - */ -@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. -
- Normally, users will have no need to call this method. - */ -- (NSDictionary *)buildWithIndex:(NSUInteger)index; -@end diff --git a/Yep/GoogleAnalytics/GAIFields.h b/Yep/GoogleAnalytics/GAIFields.h deleted file mode 100644 index e54cef03..00000000 --- a/Yep/GoogleAnalytics/GAIFields.h +++ /dev/null @@ -1,133 +0,0 @@ -/*! - @header GAIFields.h - @abstract Google Analytics iOS SDK Hit Format Header - @copyright Copyright 2013 Google Inc. All rights reserved. - */ - -#import - -/*! - 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 kGAIDataSource; -extern NSString *const kGAIAnonymizeIp; -extern NSString *const kGAISessionControl; -extern NSString *const kGAIDeviceModelVersion; -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 kGAICampaignAdNetworkClickId; -extern NSString *const kGAICampaignAdNetworkId; - -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_MSG_ATTRIBUTE("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 diff --git a/Yep/GoogleAnalytics/GAILogger.h b/Yep/GoogleAnalytics/GAILogger.h deleted file mode 100644 index 06291f2c..00000000 --- a/Yep/GoogleAnalytics/GAILogger.h +++ /dev/null @@ -1,49 +0,0 @@ -/*! - @header GAILogger.h - @abstract Google Analytics iOS SDK Source - @copyright Copyright 2011 Google Inc. All rights reserved. - */ - -#import - -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 -@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 diff --git a/Yep/GoogleAnalytics/GAITrackedViewController.h b/Yep/GoogleAnalytics/GAITrackedViewController.h deleted file mode 100644 index de19def0..00000000 --- a/Yep/GoogleAnalytics/GAITrackedViewController.h +++ /dev/null @@ -1,33 +0,0 @@ -/*! - @header GAITrackedViewController.h - @abstract Google Analytics for iOS Tracked View Controller Header - @copyright Copyright 2012 Google Inc. All rights reserved. - */ - -#import -#import - -@protocol GAITracker; - -/*! - Extends UIViewController to generate Google Analytics screenview 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 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 diff --git a/Yep/GoogleAnalytics/GAITracker.h b/Yep/GoogleAnalytics/GAITracker.h deleted file mode 100644 index fdc5c5df..00000000 --- a/Yep/GoogleAnalytics/GAITracker.h +++ /dev/null @@ -1,57 +0,0 @@ -/*! - @header GAITracker.h - @abstract Google Analytics iOS SDK Tracker Header - @copyright Copyright 2013 Google Inc. All rights reserved. -*/ - -#import - -/*! - 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 - -/*! - 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 diff --git a/Yep/GoogleAnalytics/libGoogleAnalyticsServices.a b/Yep/GoogleAnalytics/libGoogleAnalyticsServices.a deleted file mode 100644 index c7c10fbe..00000000 Binary files a/Yep/GoogleAnalytics/libGoogleAnalyticsServices.a and /dev/null differ diff --git a/Yep/Info.plist b/Yep/Info.plist index 3b9ce8e5..ba4f01ff 100644 --- a/Yep/Info.plist +++ b/Yep/Info.plist @@ -40,7 +40,7 @@ CFBundleVersion - 229 + 231 Fabric APIKey diff --git a/Yep/ViewControllers/About/AboutViewController.swift b/Yep/ViewControllers/About/AboutViewController.swift index ad4f6286..b9ec09e9 100644 --- a/Yep/ViewControllers/About/AboutViewController.swift +++ b/Yep/ViewControllers/About/AboutViewController.swift @@ -35,8 +35,6 @@ class AboutViewController: SegueViewController { override func viewDidLoad() { super.viewDidLoad() - - self.screenName = "About" title = NSLocalizedString("About", comment: "") diff --git a/Yep/ViewControllers/AddFriends/AddFriendsViewController.swift b/Yep/ViewControllers/AddFriends/AddFriendsViewController.swift index 8455f6b8..83548483 100644 --- a/Yep/ViewControllers/AddFriends/AddFriendsViewController.swift +++ b/Yep/ViewControllers/AddFriends/AddFriendsViewController.swift @@ -19,8 +19,6 @@ class AddFriendsViewController: SegueViewController { override func viewDidLoad() { super.viewDidLoad() - - self.screenName = "Add Friends" title = NSLocalizedString("Add Friends", comment: "") diff --git a/Yep/ViewControllers/Base/SegueViewController.swift b/Yep/ViewControllers/Base/SegueViewController.swift index ee6f31ca..b67a302b 100644 --- a/Yep/ViewControllers/Base/SegueViewController.swift +++ b/Yep/ViewControllers/Base/SegueViewController.swift @@ -8,7 +8,7 @@ import UIKit -class SegueViewController: GAITrackedViewController { +class SegueViewController: UIViewController { override func performSegueWithIdentifier(identifier: String, sender: AnyObject?) { diff --git a/Yep/ViewControllers/Contacts/ContactsViewController.swift b/Yep/ViewControllers/Contacts/ContactsViewController.swift index 1a7bbc83..fc64f727 100644 --- a/Yep/ViewControllers/Contacts/ContactsViewController.swift +++ b/Yep/ViewControllers/Contacts/ContactsViewController.swift @@ -165,8 +165,6 @@ class ContactsViewController: BaseViewController { } override func viewWillAppear(animated: Bool) { - self.screenName = "Contacts" - super.viewWillAppear(animated) } } diff --git a/Yep/ViewControllers/Conversation/ConversationViewController.swift b/Yep/ViewControllers/Conversation/ConversationViewController.swift index dc146f4a..1ec7d031 100644 --- a/Yep/ViewControllers/Conversation/ConversationViewController.swift +++ b/Yep/ViewControllers/Conversation/ConversationViewController.swift @@ -879,12 +879,6 @@ class ConversationViewController: BaseViewController { needDetectMention = conversation.needDetectMention - if let _ = conversation.withGroup?.withFeed { - self.screenName = "Feed Conversation" - } else { - self.screenName = "Conversation" - } - #if DEBUG //view.addSubview(conversationFPSLabel) #endif diff --git a/Yep/ViewControllers/Conversations/ConversationsViewController.swift b/Yep/ViewControllers/Conversations/ConversationsViewController.swift index c837f801..159e986f 100644 --- a/Yep/ViewControllers/Conversations/ConversationsViewController.swift +++ b/Yep/ViewControllers/Conversations/ConversationsViewController.swift @@ -87,8 +87,6 @@ class ConversationsViewController: SegueViewController { override func viewDidLoad() { super.viewDidLoad() - - self.screenName = "Conversations" realm = try! Realm() diff --git a/Yep/ViewControllers/Discover/DiscoverViewController.swift b/Yep/ViewControllers/Discover/DiscoverViewController.swift index d4c6aac6..8db97b49 100644 --- a/Yep/ViewControllers/Discover/DiscoverViewController.swift +++ b/Yep/ViewControllers/Discover/DiscoverViewController.swift @@ -77,7 +77,6 @@ class DiscoverViewController: BaseViewController { #endif override func viewWillAppear(animated: Bool) { - self.screenName = "Discover" super.viewWillAppear(animated) } diff --git a/Yep/ViewControllers/EditProfile/EditProfileViewController.swift b/Yep/ViewControllers/EditProfile/EditProfileViewController.swift index b883cee3..c440ce2f 100644 --- a/Yep/ViewControllers/EditProfile/EditProfileViewController.swift +++ b/Yep/ViewControllers/EditProfile/EditProfileViewController.swift @@ -67,8 +67,6 @@ class EditProfileViewController: SegueViewController { override func viewDidLoad() { super.viewDidLoad() - - self.screenName = "Edit Profile" title = NSLocalizedString("Edit Profile", comment: "") diff --git a/Yep/ViewControllers/EditSkills/EditSkillsViewController.swift b/Yep/ViewControllers/EditSkills/EditSkillsViewController.swift index 75d42371..bb1bce93 100644 --- a/Yep/ViewControllers/EditSkills/EditSkillsViewController.swift +++ b/Yep/ViewControllers/EditSkills/EditSkillsViewController.swift @@ -37,9 +37,6 @@ class EditSkillsViewController: BaseViewController { // animatedOnNavigationBar = false title = skillSet?.name - - self.screenName = "Edit Skills" - // get all skill categories allSkillCategories(failureHandler: { (reason, errorMessage) -> Void in diff --git a/Yep/ViewControllers/FeedConversations/FeedConversationsViewController.swift b/Yep/ViewControllers/FeedConversations/FeedConversationsViewController.swift index 81915089..4ed07b27 100644 --- a/Yep/ViewControllers/FeedConversations/FeedConversationsViewController.swift +++ b/Yep/ViewControllers/FeedConversations/FeedConversationsViewController.swift @@ -41,8 +41,6 @@ class FeedConversationsViewController: SegueViewController { override func viewDidLoad() { super.viewDidLoad() - - self.screenName = "Joined Feeds" title = NSLocalizedString("Feeds", comment: "") diff --git a/Yep/ViewControllers/Feedback/FeedbackViewController.swift b/Yep/ViewControllers/Feedback/FeedbackViewController.swift index a68e2a5a..08df0eef 100644 --- a/Yep/ViewControllers/Feedback/FeedbackViewController.swift +++ b/Yep/ViewControllers/Feedback/FeedbackViewController.swift @@ -10,7 +10,7 @@ import UIKit import KeyboardMan import DeviceGuru -class FeedbackViewController: GAITrackedViewController { +class FeedbackViewController: UIViewController { @IBOutlet private weak var promptLabel: UILabel! { didSet { @@ -55,8 +55,6 @@ class FeedbackViewController: GAITrackedViewController { override func viewDidLoad() { super.viewDidLoad() - - self.screenName = "Feedback" title = NSLocalizedString("Feedback", comment: "") diff --git a/Yep/ViewControllers/Feeds/FeedsViewController.swift b/Yep/ViewControllers/Feeds/FeedsViewController.swift index 7c0c944c..75a06bb9 100644 --- a/Yep/ViewControllers/Feeds/FeedsViewController.swift +++ b/Yep/ViewControllers/Feeds/FeedsViewController.swift @@ -259,8 +259,6 @@ class FeedsViewController: BaseViewController { override func viewDidLoad() { super.viewDidLoad() - - self.screenName = "Feeds" // 优先处理侧滑,而不是 scrollView 的上下滚动,避免出现你想侧滑返回的时候,结果触发了 scrollView 的上下滚动 if let gestures = navigationController?.view.gestureRecognizers { diff --git a/Yep/ViewControllers/FriendsInContacts/FriendsInContactsViewController.swift b/Yep/ViewControllers/FriendsInContacts/FriendsInContactsViewController.swift index 635b7630..083e931c 100644 --- a/Yep/ViewControllers/FriendsInContacts/FriendsInContactsViewController.swift +++ b/Yep/ViewControllers/FriendsInContacts/FriendsInContactsViewController.swift @@ -41,8 +41,6 @@ class FriendsInContactsViewController: BaseViewController { override func viewDidLoad() { super.viewDidLoad() - - self.screenName = "Friends In Contacts" title = NSLocalizedString("Available Friends", comment: "") diff --git a/Yep/ViewControllers/Login/LoginByMobileViewController.swift b/Yep/ViewControllers/Login/LoginByMobileViewController.swift index 564894c3..0150eaf8 100644 --- a/Yep/ViewControllers/Login/LoginByMobileViewController.swift +++ b/Yep/ViewControllers/Login/LoginByMobileViewController.swift @@ -27,8 +27,6 @@ class LoginByMobileViewController: BaseViewController { override func viewDidLoad() { super.viewDidLoad() - - self.screenName = "Login By Mobile" animatedOnNavigationBar = false diff --git a/Yep/ViewControllers/Login/LoginVerifyMobileViewController.swift b/Yep/ViewControllers/Login/LoginVerifyMobileViewController.swift index 91ea218f..34ac1c88 100644 --- a/Yep/ViewControllers/Login/LoginVerifyMobileViewController.swift +++ b/Yep/ViewControllers/Login/LoginVerifyMobileViewController.swift @@ -9,7 +9,7 @@ import UIKit import Ruler -class LoginVerifyMobileViewController: GAITrackedViewController { +class LoginVerifyMobileViewController: UIViewController { var mobile: String! var areaCode: String! @@ -52,8 +52,6 @@ class LoginVerifyMobileViewController: GAITrackedViewController { override func viewDidLoad() { super.viewDidLoad() - - self.screenName = "Login Verify Mobile" view.backgroundColor = UIColor.yepViewBackgroundColor() diff --git a/Yep/ViewControllers/MediaPreview/MediaPreviewViewController.swift b/Yep/ViewControllers/MediaPreview/MediaPreviewViewController.swift index 95b99f2d..622ec854 100644 --- a/Yep/ViewControllers/MediaPreview/MediaPreviewViewController.swift +++ b/Yep/ViewControllers/MediaPreview/MediaPreviewViewController.swift @@ -21,7 +21,7 @@ enum PreviewMedia { case WebImage(imageURL: NSURL, linkURL: NSURL) } -class MediaPreviewViewController: GAITrackedViewController { +class MediaPreviewViewController: UIViewController { var previewMedias: [PreviewMedia] = [] var startIndex: Int = 0 @@ -105,8 +105,6 @@ class MediaPreviewViewController: GAITrackedViewController { override func viewDidLoad() { super.viewDidLoad() - - self.screenName = "Media Preview" mediasCollectionView.backgroundColor = UIColor.clearColor() mediasCollectionView.registerNib(UINib(nibName: mediaViewCellID, bundle: nil), forCellWithReuseIdentifier: mediaViewCellID) diff --git a/Yep/ViewControllers/MessageMedia/MessageMediaViewController.swift b/Yep/ViewControllers/MessageMedia/MessageMediaViewController.swift index c94e7d6c..930d75d2 100644 --- a/Yep/ViewControllers/MessageMedia/MessageMediaViewController.swift +++ b/Yep/ViewControllers/MessageMedia/MessageMediaViewController.swift @@ -10,7 +10,7 @@ import UIKit import AVFoundation import MonkeyKing -class MessageMediaViewController: GAITrackedViewController { +class MessageMediaViewController: UIViewController { var previewMedias: [PreviewMedia] = [] var startIndex: Int = 0 @@ -39,8 +39,6 @@ class MessageMediaViewController: GAITrackedViewController { override func viewDidLoad() { super.viewDidLoad() - - self.screenName = "Message Media" title = NSLocalizedString("Preview", comment: "") diff --git a/Yep/ViewControllers/NewFeed/NewFeedViewController.swift b/Yep/ViewControllers/NewFeed/NewFeedViewController.swift index 905993a1..93831018 100644 --- a/Yep/ViewControllers/NewFeed/NewFeedViewController.swift +++ b/Yep/ViewControllers/NewFeed/NewFeedViewController.swift @@ -216,8 +216,6 @@ class NewFeedViewController: SegueViewController { override func viewDidLoad() { super.viewDidLoad() - self.screenName = "New Feed" - title = NSLocalizedString("New Feed", comment: "") view.backgroundColor = UIColor.yepBackgroundColor() diff --git a/Yep/ViewControllers/NewFeedVoiceRecord/NewFeedVoiceRecordViewController.swift b/Yep/ViewControllers/NewFeedVoiceRecord/NewFeedVoiceRecordViewController.swift index bc350c98..6754dd36 100644 --- a/Yep/ViewControllers/NewFeedVoiceRecord/NewFeedVoiceRecordViewController.swift +++ b/Yep/ViewControllers/NewFeedVoiceRecord/NewFeedVoiceRecordViewController.swift @@ -193,8 +193,6 @@ class NewFeedVoiceRecordViewController: SegueViewController { override func viewDidLoad() { super.viewDidLoad() - - self.screenName = "New Voice Feed" title = NSLocalizedString("New Voice", comment: "") diff --git a/Yep/ViewControllers/PickLocation/PickLocationViewController.swift b/Yep/ViewControllers/PickLocation/PickLocationViewController.swift index 12906dc6..12b66e58 100644 --- a/Yep/ViewControllers/PickLocation/PickLocationViewController.swift +++ b/Yep/ViewControllers/PickLocation/PickLocationViewController.swift @@ -147,8 +147,6 @@ class PickLocationViewController: SegueViewController { override func viewDidLoad() { super.viewDidLoad() - - self.screenName = "Pick Location" title = NSLocalizedString("Pick Location", comment: "") diff --git a/Yep/ViewControllers/Profile/ProfileViewController.swift b/Yep/ViewControllers/Profile/ProfileViewController.swift index 3b114952..6ae7ce81 100644 --- a/Yep/ViewControllers/Profile/ProfileViewController.swift +++ b/Yep/ViewControllers/Profile/ProfileViewController.swift @@ -821,8 +821,6 @@ class ProfileViewController: SegueViewController { customNavigationBar.alpha = 1.0 statusBarShouldLight = false - - self.screenName = "Profile" if noNeedToChangeStatusBar { statusBarShouldLight = true diff --git a/Yep/ViewControllers/Register/RegisterPickAvatarViewController.swift b/Yep/ViewControllers/Register/RegisterPickAvatarViewController.swift index 14c2dfb0..9b20c63b 100644 --- a/Yep/ViewControllers/Register/RegisterPickAvatarViewController.swift +++ b/Yep/ViewControllers/Register/RegisterPickAvatarViewController.swift @@ -116,8 +116,6 @@ class RegisterPickAvatarViewController: SegueViewController { override func viewDidLoad() { super.viewDidLoad() - - self.screenName = "Register Pick Avatar" view.backgroundColor = UIColor.yepViewBackgroundColor() diff --git a/Yep/ViewControllers/Register/RegisterPickMobileViewController.swift b/Yep/ViewControllers/Register/RegisterPickMobileViewController.swift index 13f67904..eac7cd9e 100644 --- a/Yep/ViewControllers/Register/RegisterPickMobileViewController.swift +++ b/Yep/ViewControllers/Register/RegisterPickMobileViewController.swift @@ -27,8 +27,6 @@ class RegisterPickMobileViewController: SegueViewController { override func viewDidLoad() { super.viewDidLoad() - - self.screenName = "Register Pick Mobile" view.backgroundColor = UIColor.yepViewBackgroundColor() diff --git a/Yep/ViewControllers/Register/RegisterPickNameViewController.swift b/Yep/ViewControllers/Register/RegisterPickNameViewController.swift index 3d1f5b4a..45d9d7f8 100644 --- a/Yep/ViewControllers/Register/RegisterPickNameViewController.swift +++ b/Yep/ViewControllers/Register/RegisterPickNameViewController.swift @@ -33,8 +33,6 @@ class RegisterPickNameViewController: BaseViewController { override func viewDidLoad() { super.viewDidLoad() - - self.screenName = "Register Pick Name" animatedOnNavigationBar = false diff --git a/Yep/ViewControllers/Register/RegisterPickSkillsViewController.swift b/Yep/ViewControllers/Register/RegisterPickSkillsViewController.swift index 4687d7a5..a968a146 100644 --- a/Yep/ViewControllers/Register/RegisterPickSkillsViewController.swift +++ b/Yep/ViewControllers/Register/RegisterPickSkillsViewController.swift @@ -53,8 +53,6 @@ class RegisterPickSkillsViewController: BaseViewController { override func viewDidLoad() { super.viewDidLoad() - - self.screenName = "Register Pick Skills" let doneBarButtonItem = UIBarButtonItem(barButtonSystemItem: UIBarButtonSystemItem.Done, target: self, action: "saveSkills:") navigationItem.rightBarButtonItem = doneBarButtonItem diff --git a/Yep/ViewControllers/Register/RegisterVerifyMobileViewController.swift b/Yep/ViewControllers/Register/RegisterVerifyMobileViewController.swift index b1f3dbe2..7badecae 100644 --- a/Yep/ViewControllers/Register/RegisterVerifyMobileViewController.swift +++ b/Yep/ViewControllers/Register/RegisterVerifyMobileViewController.swift @@ -52,8 +52,6 @@ class RegisterVerifyMobileViewController: SegueViewController { override func viewDidLoad() { super.viewDidLoad() - - self.screenName = "Register Verify Mobile" view.backgroundColor = UIColor.yepViewBackgroundColor() diff --git a/Yep/ViewControllers/SearchedUsers/SearchedUsersViewController.swift b/Yep/ViewControllers/SearchedUsers/SearchedUsersViewController.swift index 420c39d4..3ef803a4 100644 --- a/Yep/ViewControllers/SearchedUsers/SearchedUsersViewController.swift +++ b/Yep/ViewControllers/SearchedUsers/SearchedUsersViewController.swift @@ -30,8 +30,6 @@ class SearchedUsersViewController: BaseViewController { override func viewDidLoad() { super.viewDidLoad() - - self.screenName = "Search User" title = NSLocalizedString("Search", comment: "") + " \"\(searchText)\"" diff --git a/Yep/ViewControllers/Settings/SettingsViewController.swift b/Yep/ViewControllers/Settings/SettingsViewController.swift index 14de514e..7461a597 100644 --- a/Yep/ViewControllers/Settings/SettingsViewController.swift +++ b/Yep/ViewControllers/Settings/SettingsViewController.swift @@ -51,7 +51,6 @@ class SettingsViewController: BaseViewController { } override func viewWillAppear(animated: Bool) { - self.screenName = "Settings" super.viewWillAppear(animated) } @@ -60,8 +59,6 @@ class SettingsViewController: BaseViewController { super.viewDidLoad() // animatedOnNavigationBar = false - - self.screenName = "Settings" title = NSLocalizedString("Settings", comment: "") diff --git a/Yep/ViewControllers/SkillHome/SkillHomeViewController.swift b/Yep/ViewControllers/SkillHome/SkillHomeViewController.swift index eb0d25c0..777ca331 100644 --- a/Yep/ViewControllers/SkillHome/SkillHomeViewController.swift +++ b/Yep/ViewControllers/SkillHome/SkillHomeViewController.swift @@ -110,8 +110,6 @@ class SkillHomeViewController: BaseViewController { override func viewDidLoad() { super.viewDidLoad() - self.screenName = "Skill Home" - if let skillCategory = skill?.category { headerView.skillCategory = skillCategory } diff --git a/Yep/ViewControllers/SocialWorks/SocialWorkDribbbleViewController.swift b/Yep/ViewControllers/SocialWorks/SocialWorkDribbbleViewController.swift index 65c4a66d..d7c26fb6 100644 --- a/Yep/ViewControllers/SocialWorks/SocialWorkDribbbleViewController.swift +++ b/Yep/ViewControllers/SocialWorks/SocialWorkDribbbleViewController.swift @@ -45,7 +45,6 @@ class SocialWorkDribbbleViewController: BaseViewController { override func viewDidLoad() { super.viewDidLoad() - self.screenName = "Dribbble Works" // animatedOnNavigationBar = false diff --git a/Yep/ViewControllers/SocialWorks/SocialWorkGithubViewController.swift b/Yep/ViewControllers/SocialWorks/SocialWorkGithubViewController.swift index 142015c8..eeba34b0 100644 --- a/Yep/ViewControllers/SocialWorks/SocialWorkGithubViewController.swift +++ b/Yep/ViewControllers/SocialWorks/SocialWorkGithubViewController.swift @@ -73,7 +73,7 @@ class SocialWorkGithubViewController: BaseViewController { override func viewDidLoad() { super.viewDidLoad() - self.screenName = "Github Works" + // animatedOnNavigationBar = false if let socialAccount = socialAccount { diff --git a/Yep/ViewControllers/SocialWorks/SocialWorkInstagramViewController.swift b/Yep/ViewControllers/SocialWorks/SocialWorkInstagramViewController.swift index 3ef48ce1..53fc46b2 100644 --- a/Yep/ViewControllers/SocialWorks/SocialWorkInstagramViewController.swift +++ b/Yep/ViewControllers/SocialWorks/SocialWorkInstagramViewController.swift @@ -47,7 +47,6 @@ class SocialWorkInstagramViewController: BaseViewController { override func viewDidLoad() { super.viewDidLoad() - self.screenName = "Instagram Works" if let socialAccount = socialAccount { let accountImageView = UIImageView(image: UIImage(named: socialAccount.iconName)!) diff --git a/Yep/ViewControllers/Welcome/WelcomeViewController.swift b/Yep/ViewControllers/Welcome/WelcomeViewController.swift index f45eba79..bfc99146 100644 --- a/Yep/ViewControllers/Welcome/WelcomeViewController.swift +++ b/Yep/ViewControllers/Welcome/WelcomeViewController.swift @@ -20,8 +20,6 @@ class WelcomeViewController: GAITrackedViewController { override func viewDidLoad() { super.viewDidLoad() - - self.screenName = "Welcome" logoLabel.text = NSLocalizedString("Yep", comment: "") sloganLabel.text = NSLocalizedString("Meet with genius", comment: "") diff --git a/Yep/Yep-Bridging-Header.h b/Yep/Yep-Bridging-Header.h index 23dca7c8..c389b7f3 100644 --- a/Yep/Yep-Bridging-Header.h +++ b/Yep/Yep-Bridging-Header.h @@ -3,8 +3,4 @@ // #import -#import "JPUSHService.h" -#import "GAI.h" -#import "GAIDictionaryBuilder.h" -#import "GAIFields.h" -#import "GAILogger.h" \ No newline at end of file +#import "JPUSHService.h" \ No newline at end of file