Appboy Integration Guide

This topic describes how to integrate Apteligent with Appboy. Appboy is mobile marketing automation that empowers marketers to build better relationships with their customers with push, email, in-app and more. This integration allows companies to use improve retention and reduce by sending targeted notifications to users who have had a bad experience.

This document will guide you through the process of activating sending Apteligent events into Appboy through a few additional lines of code in the SDK.

Requirements

Before you start the integration process, please make sure you have the following:

  • Implemented the Apteligent SDK (requires v5.6.1 of the iOS SDK or newer) in the mobile app
  • Implemented the Appboy SDK in the mobile app

Note

This integration is currently only available on iOS. Android is coming soon.

Implementation

The Apteligent SDK will create a notification that fires when the SDK knows that a crash occurred. On iOS, when the user loads the app after a crash occurred, this notification will fire. The notification will contain four pieces of information:

  • Crash Name: The name of the crash (i.e., NSRangeException)
  • Crash Reason: More details on why the crash occurred (i.e., “***-[__NSArrayM objectAtIndex:]:index 18446744073709551615 beyond bounds for empty array”)
  • Crash Date: The date and time at which the crash occurred
  • Crash View: A list of the views that were active at the time of the crash

Sending a Crash Event to Appboy

Note

Make sure the Appboy SDK is initialized before Crittercism, otherwise the crash event will not be sent.

To send these crash events to Appboy, add two lines of code:

  1. Register an Observer to Capture the Apteligent Event
[[NSNotificationCenter defaultCenter] addObserver:self
    selector:@selector(crashDidOccur:)
    name:@"CRCrashNotification" object:nil];
  1. Send an Event to Appboy Upon Notification
- (void) crashDidOccur:(NSNotification*)notification {
// Send Event to Appboy
[[Appboy sharedInstance] logCustomEvent:@"ApteligentCrashEvent" withProperties:notification.userInfo}];
[[Appboy sharedInstance].user setCustomAttributeWithKey:@"lastCrashName" andStringValue:crashInfo[@"crashName"]];
[[Appboy sharedInstance].user setCustomAttributeWithKey:@"lastCrashReason" andStringValue:crashInfo[@"crashReason"]];
[[Appboy sharedInstance].user setCustomAttributeWithKey:@"lastCrashDate" andDateValue:crashInfo[@"crashDate"]];
}

For additional assistance, contact Apteligent Support (support@apteligent.com).