Skip to content

Commit 6392c7a

Browse files
committed
Updated SKAN calls
1 parent f432e47 commit 6392c7a

File tree

1 file changed

+26
-0
lines changed

1 file changed

+26
-0
lines changed

Sources/BranchSDK/BNCSKAdNetwork.m

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@
1111
#import "BNCPreferenceHelper.h"
1212
#import "BranchConstants.h"
1313
#import "BranchLogger.h"
14+
#import "Branch.h"
1415

1516
@interface BNCSKAdNetwork()
1617

@@ -72,6 +73,11 @@ - (BOOL)shouldAttemptSKAdNetworkCallout {
7273

7374
- (void)registerAppForAdNetworkAttribution {
7475
if (@available(iOS 14.0, macCatalyst 14.0, *)) {
76+
if (![self isSKANAllowedForAttributionLevel]) {
77+
[[BranchLogger shared] logDebug:@"SKAN registerAppForAdNetworkAttribution skipped due to BranchAttributionLevel" error:nil];
78+
return;
79+
}
80+
7581
if ([self shouldAttemptSKAdNetworkCallout] && [self.skAdNetworkClass respondsToSelector:self.skAdNetworkRegisterAppForAdNetworkAttribution]) {
7682
[[BranchLogger shared] logDebug:@"Calling registerAppForAdNetworkAttribution" error:nil];
7783
// Equivalent call [SKAdNetwork registerAppForAdNetworkAttribution];
@@ -82,6 +88,11 @@ - (void)registerAppForAdNetworkAttribution {
8288

8389
- (void)updateConversionValue:(NSInteger)conversionValue {
8490
if (@available(iOS 14.0, macCatalyst 14.0, *)) {
91+
if (![self isSKANAllowedForAttributionLevel]) {
92+
[[BranchLogger shared] logDebug:@"SKAN updateConversionValue skipped due to BranchAttributionLevel" error:nil];
93+
return;
94+
}
95+
8596
if ([self shouldAttemptSKAdNetworkCallout] && [self.skAdNetworkClass respondsToSelector:self.skAdNetworkUpdateConversionValue]) {
8697
[[BranchLogger shared] logDebug:[NSString stringWithFormat:@"Calling updateConversionValue:%ld", (long)conversionValue] error:nil];
8798

@@ -93,6 +104,11 @@ - (void)updateConversionValue:(NSInteger)conversionValue {
93104

94105
- (void)updatePostbackConversionValue:(NSInteger)conversionValue completionHandler:(void (^)(NSError *error))completion {
95106
if (@available(iOS 15.4, macCatalyst 15.4, *)) {
107+
if (![self isSKANAllowedForAttributionLevel]) {
108+
[[BranchLogger shared] logDebug:@"SKAN updatePostbackConversionValue skipped due to BranchAttributionLevel" error:nil];
109+
return;
110+
}
111+
96112
if ([self shouldAttemptSKAdNetworkCallout] && [self.skAdNetworkClass respondsToSelector:self.skAdNetworkUpdatePostbackConversionValue]) {
97113
[[BranchLogger shared] logDebug:[NSString stringWithFormat:@"Calling updatePostbackConversionValue:%ld completionHandler:completion", (long)conversionValue] error:nil];
98114

@@ -108,6 +124,11 @@ - (void)updatePostbackConversionValue:(NSInteger)fineValue
108124
lockWindow:(BOOL)lockWindow
109125
completionHandler:(void (^)(NSError *error))completion {
110126
if (@available(iOS 16.1, macCatalyst 16.1, *)) {
127+
if (![self isSKANAllowedForAttributionLevel]) {
128+
[[BranchLogger shared] logDebug:@"SKAN updatePostbackConversionValue skipped due to BranchAttributionLevel" error:nil];
129+
return;
130+
}
131+
111132
if ([self shouldAttemptSKAdNetworkCallout] && [self.skAdNetworkClass respondsToSelector:self.skAdNetworkUpdatePostbackConversionValueCoarseValueLockWindow]) {
112133
[[BranchLogger shared] logDebug:[NSString stringWithFormat:@"Calling updatePostbackConversionValue:%ld coarseValue:%@ lockWindow:%d completionHandler:completion", (long)fineValue, coarseValue, lockWindow] error:nil];
113134
// Equivalent call [SKAdNetwork updatePostbackConversionValue:coarseValue:lockWindow:completionHandler:];
@@ -197,4 +218,9 @@ - (BOOL) shouldCallPostbackForDataResponse:(NSDictionary *) dataResponseDictiona
197218
return shouldCallUpdatePostback;
198219
}
199220

221+
- (BOOL)isSKANAllowedForAttributionLevel {
222+
BranchAttributionLevel level = [[BNCPreferenceHelper sharedInstance] attributionLevel];
223+
return !(level == BranchAttributionLevelMinimal || level == BranchAttributionLevelNone);
224+
}
225+
200226
@end

0 commit comments

Comments
 (0)