Skip to content

Commit

Permalink
fix: Forwarding ATT status to kits (#276)
Browse files Browse the repository at this point in the history
  • Loading branch information
einsteinx2 committed Apr 30, 2024
1 parent 5ea7f68 commit 9fd95f7
Show file tree
Hide file tree
Showing 2 changed files with 17 additions and 0 deletions.
4 changes: 4 additions & 0 deletions mParticle-Apple-SDK/Kits/MPKitContainer.mm
Original file line number Diff line number Diff line change
Expand Up @@ -2302,6 +2302,10 @@ - (void)attemptToLogEventToKit:(id<MPExtensionKitProtocol>)kitRegister kitFilter
} else if (selector == @selector(shouldDelayMParticleUpload)) {
[kitRegister.wrapperInstance shouldDelayMParticleUpload];
execStatus = [[MPKitExecStatus alloc] initWithSDKCode:kitRegister.code returnCode:MPKitReturnCodeSuccess];
} else if (selector == @selector(setATTStatus:withATTStatusTimestampMillis:)) {
MPATTAuthorizationStatus status = (MPATTAuthorizationStatus)[parameters[0] unsignedIntValue];
NSNumber *timestamp = [parameters[1] isKindOfClass:[NSNumber class]] ? (NSNumber*)parameters[1] : nil;
execStatus = [kitRegister.wrapperInstance setATTStatus:status withATTStatusTimestampMillis:timestamp];
} else if (parameters.count == 3) {
typedef MPKitExecStatus *(*send_type)(id, SEL, id, id, id);
send_type func = (send_type)objc_msgSend;
Expand Down
13 changes: 13 additions & 0 deletions mParticle-Apple-SDK/mParticle.m
Original file line number Diff line number Diff line change
Expand Up @@ -1119,6 +1119,19 @@ - (void)setATTStatus:(MPATTAuthorizationStatus)status withATTStatusTimestampMill
[MParticle sharedInstance].stateMachine.attAuthorizationTimestamp = attStatusTimestampMillis;
}
}

// Forward to kits
dispatch_async(dispatch_get_main_queue(), ^{
NSNumber *parameter0 = @(status);
NSObject *parameter1 = attStatusTimestampMillis ?: [NSNull null];
MPForwardQueueParameters *parameters = [[MPForwardQueueParameters alloc] initWithParameters:@[parameter0, parameter1]];
[[MParticle sharedInstance].kitContainer forwardSDKCall:@selector(setATTStatus:withATTStatusTimestampMillis:)
event:nil
parameters:parameters
messageType:MPMessageTypeUnknown
userInfo:nil
];
});
}

#pragma mark Attribution
Expand Down

0 comments on commit 9fd95f7

Please sign in to comment.