diff --git a/Branch.framework/Info.plist b/Branch.framework/Info.plist index e2dc266a6..9416d6cc5 100644 --- a/Branch.framework/Info.plist +++ b/Branch.framework/Info.plist @@ -17,11 +17,11 @@ CFBundlePackageType FMWK CFBundleShortVersionString - 0.23.5 + 0.24.0 CFBundleSignature ???? CFBundleVersion - 0.23.5 + 0.24.0 LSRequiresIPhoneOS NSHumanReadableCopyright diff --git a/Branch.framework/Versions/A/Branch b/Branch.framework/Versions/A/Branch index becd7db02..b3039055d 100644 Binary files a/Branch.framework/Versions/A/Branch and b/Branch.framework/Versions/A/Branch differ diff --git a/Branch.framework/Versions/A/Headers/BNCError.h b/Branch.framework/Versions/A/Headers/BNCError.h index 7e6e36c5c..6b61b7a66 100644 --- a/Branch.framework/Versions/A/Headers/BNCError.h +++ b/Branch.framework/Versions/A/Headers/BNCError.h @@ -30,6 +30,7 @@ typedef NS_ENUM(NSInteger, BNCErrorCode) { BNCRedeemZeroCreditsError = 1012, BNCSpotlightIdentifierError = 1013, BNCSpotlightPublicIndexError = 1014, + BNCTrackingDisabledError = 1015, BNCHighestError, }; diff --git a/Branch.framework/Versions/A/Headers/BNCLinkCache.h b/Branch.framework/Versions/A/Headers/BNCLinkCache.h index 5c23e861a..2d6e99868 100644 --- a/Branch.framework/Versions/A/Headers/BNCLinkCache.h +++ b/Branch.framework/Versions/A/Headers/BNCLinkCache.h @@ -11,4 +11,5 @@ @interface BNCLinkCache : NSObject - (void)setObject:(NSString *)anObject forKey:(BNCLinkData *)aKey; - (NSString *)objectForKey:(BNCLinkData *)aKey; +- (void) clear; @end diff --git a/Branch.framework/Versions/A/Headers/BNCLog.h b/Branch.framework/Versions/A/Headers/BNCLog.h index 613222870..c88a9f632 100644 --- a/Branch.framework/Versions/A/Headers/BNCLog.h +++ b/Branch.framework/Versions/A/Headers/BNCLog.h @@ -131,7 +131,7 @@ extern BNCLogFlushFunctionPtr _Nullable BNCLogFlushFunction(void); extern void BNCLogWriteMessageFormat( BNCLogLevel logLevel, const char *_Nullable sourceFileName, - int sourceLineNumber, + int32_t sourceLineNumber, id _Nullable messageFormat, ... ); @@ -140,7 +140,7 @@ extern void BNCLogWriteMessageFormat( extern void BNCLogWriteMessage( BNCLogLevel logLevel, NSString *_Nonnull sourceFileName, - NSUInteger sourceLineNumber, + int32_t sourceLineNumber, NSString *_Nonnull message ); diff --git a/Branch.framework/Versions/A/Headers/BNCPreferenceHelper.h b/Branch.framework/Versions/A/Headers/BNCPreferenceHelper.h index 0e5584304..b2deb630a 100644 --- a/Branch.framework/Versions/A/Headers/BNCPreferenceHelper.h +++ b/Branch.framework/Versions/A/Headers/BNCPreferenceHelper.h @@ -54,6 +54,9 @@ NSURL* /* _Nonnull */ BNCURLForBranchDirectory(void); @property (strong, atomic) NSArray *URLBlackList; @property (assign, atomic) NSInteger URLBlackListVersion; +@property (assign, atomic) BOOL trackingDisabled; +- (void) clearTrackingInformation; + + (BNCPreferenceHelper *)preferenceHelper; - (NSString *)getAPIBaseURL; @@ -88,6 +91,7 @@ NSURL* /* _Nonnull */ BNCURLForBranchDirectory(void); - (NSDictionary *)getContentAnalyticsManifest; - (void)saveContentAnalyticsManifest:(NSDictionary *)cdManifest; +- (NSMutableString*) sanitizedMutableBaseURL:(NSString*)baseUrl; - (void) synchronize; // Flushes preference queue to persistence. @end diff --git a/Branch.framework/Versions/A/Headers/Branch.h b/Branch.framework/Versions/A/Headers/Branch.h index 6e3471a78..48d40628d 100644 --- a/Branch.framework/Versions/A/Headers/Branch.h +++ b/Branch.framework/Versions/A/Headers/Branch.h @@ -230,6 +230,8 @@ typedef NS_ENUM(NSUInteger, BranchCreditHistoryOrder) { /// @return Returns the current Branch key. + (NSString*) branchKey; ++ (BOOL) branchKeyIsSet; + /** * By default, the Branch SDK will include the device fingerprint ID as metadata in Crashlytics * reports. This can help locate problems by correlating API traffic with a crash. To @@ -678,6 +680,29 @@ typedef NS_ENUM(NSUInteger, BranchCreditHistoryOrder) { - (void)setInstallRequestDelay:(NSInteger)installRequestDelay; +/** + Disables the Branch SDK from tracking the user. This is useful for GDPR privacy compliance. + + When tracking is disabled, the Branch SDK will clear the Branch defaults of user identifying + information and prevent Branch from making any Branch network calls that will track the user. + + Note that: + + * Opening Branch deep links with an explicit URL will work. + * Deferred deep linking will not work. + * Generating short links will not work and will return long links instead. + * Sending user tracking events such as `userCompletedAction`, `BranchCommerceEvents`, and + `BranchEvents` will fail. + * User rewards and credits will not work. + * Setting a user identity and logging a user identity out will not work. + + @param disabled If set to `true` then tracking will be disabled. + @warning This will prevent most of the Branch SDK functionality. +*/ ++ (void) setTrackingDisabled:(BOOL)disabled; + +///Returns the current tracking state. ++ (BOOL) trackingDisabled; #pragma mark - Session Item methods diff --git a/Branch.framework/Versions/A/Headers/BranchEvent.h b/Branch.framework/Versions/A/Headers/BranchEvent.h index 0ae043338..2ff070d8a 100644 --- a/Branch.framework/Versions/A/Headers/BranchEvent.h +++ b/Branch.framework/Versions/A/Headers/BranchEvent.h @@ -72,3 +72,16 @@ FOUNDATION_EXPORT BranchStandardEvent _Nonnull BranchStandardEventUnlockAchievem - (NSDictionary*_Nonnull) dictionary; //!< Returns a dictionary representation of the event. - (NSString* _Nonnull) description; //!< Returns a string description of the event. @end + +#pragma mark - BranchEventRequest + +@interface BranchEventRequest : BNCServerRequest + +- (instancetype _Nonnull) initWithServerURL:(NSURL*_Nonnull)serverURL + eventDictionary:(NSDictionary*_Nullable)eventDictionary + completion:(void (^_Nullable)(NSDictionary*_Nullable response, NSError*_Nullable error))completion; + +@property (strong) NSDictionary*_Nullable eventDictionary; +@property (strong) NSURL*_Nullable serverURL; +@property (copy) void (^_Nullable completion)(NSDictionary*_Nullable response, NSError*_Nullable error); +@end diff --git a/checksum b/checksum index ab28ca4fd..43d91ec1b 100644 --- a/checksum +++ b/checksum @@ -1,4 +1,4 @@ #checksum for Branch-iOS-SDK found at https://s3-us-west-1.amazonaws.com/branchhost/Branch-iOS-SDK.zip -a9a64a86b6068c564feb9905188c36bfc93f1a71 Branch-iOS-SDK.zip +39ffa1a7ed07fee4370534e2baab39fa26985c21 Branch-iOS-SDK.zip #checksum for Branch-iOS-TestBed found at https://s3-us-west-1.amazonaws.com/branchhost/Branch-iOS-TestBed.zip -037cc2c49045ebbe2578af27268fa5496a39c7d7 Branch-iOS-TestBed.zip +2c15a83013806369afdb4044d36f196244b4b179 Branch-iOS-TestBed.zip