RudderStack is a customer data pipeline tool for collecting, routing and processing data from your websites, apps, cloud tools, and data warehouse.
More information on RudderStack can be found here.
-
Rudder-Facebook is available through CocoaPods. To install it, add the following line to your Podfile and followed by
pod install
:
pod 'Rudder-Facebook'
Put the following code in your AppDelegate.m
file under the method didFinishLaunchingWithOptions
:
RSConfigBuilder *builder = [[RSConfigBuilder alloc] init];
[builder withDataPlaneUrl:DATA_PLANE_URL];
[builder withFactory:[RudderFacebookFactory instance]];
[RSClient getInstance:WRITE_KEY config:[builder build]];
- To enable the sending of events to Facebook App Events on iOS 14+ app MUST request user for tracking:
Put the following snippet in your AppDelegate.m
file under the method didFinishLaunchingWithOptions
:
NSTimeInterval delayInSeconds = 1.0;
dispatch_time_t popTime = dispatch_time(DISPATCH_TIME_NOW, (int64_t)(delayInSeconds * NSEC_PER_SEC));
dispatch_after(popTime, dispatch_get_main_queue(), ^(void){
[self requestTracking];
});
Then put the below snippet in your AppDelegate.m
file
-(void) requestTracking {
if (@available(iOS 14, *)) {
[ATTrackingManager requestTrackingAuthorizationWithCompletionHandler:^(ATTrackingManagerAuthorizationStatus status) {
switch (status){
case ATTrackingManagerAuthorizationStatusNotDetermined:
break;
case ATTrackingManagerAuthorizationStatusRestricted:
break;
case ATTrackingManagerAuthorizationStatusAuthorized:
[FBSDKSettings.sharedSettings setAutoLogAppEventsEnabled:true];
[FBSDKSettings.sharedSettings setAdvertiserTrackingEnabled:true];
[FBSDKSettings.sharedSettings setAdvertiserIDCollectionEnabled:true];
break;
case ATTrackingManagerAuthorizationStatusDenied:
[FBSDKSettings.sharedSettings setAutoLogAppEventsEnabled:false];
[FBSDKSettings.sharedSettings setAdvertiserTrackingEnabled:false];
[FBSDKSettings.sharedSettings setAdvertiserIDCollectionEnabled:false];
break;
default:
break;
}
}];
}
}
Follow the steps from the RudderStack iOS SDK.
If you come across any issues while configuring or using this integration, please feel free to [start a conversation on our Slack channel. We will be happy to help you.