6.x Upgrade Guide: iOS

Last Update:

This upgrade guide will help you upgrade your games to use newer Chartboost iOS SDKs, versions 6.0+.

You'll also find stand-alone documentation for SDK 6.x here.


Key Update Steps
  1. Delete the Chartboost folder (any/all of the following files) from your project:
    • CBMoreAppsButton.h
    • CBNewsfeed.h
    • CBNewsfeedUI
    • CBPostInstallAnalyticsTracker.h
    • CBStory.h
    • Chartboost.h
    • libChartboost.a
  2. Drag and drop the Chartboost Framework into your project
  3. import "Chartboost.h" will become #import "Chartboost/Chartboost.h" NOTE: All chartboost files are now nested inside a Chartboost framework, so now when importing any header files, each file will be prepended with "Chartboost/"
  4. All references to [Chartboost sharedChartboost] are now changed to Chartboost:
    • [[Chartboost sharedChartboost] showInterstitial:CBLocationHomeScreen]; is now [Chartboost showInterstitial:CBLocationHomeScreen];
  5. The method hasCachedInterstitial has been renamed to hasInterstitial:
    • [[Chartboost sharedChartboost] hasCachedInterstitial:@”Home Screen”]; is now [Chartboost hasInterstitial:CBLocationHomeScreen];
  6. The following delegate methods are no longer used by the SDK:
    • ShouldRequestInterstitialsInFirstSession
    • ShouldDisplayLoadingViewForMoreApps
    • ShouldPrefetchVideoContent
    • ShouldPauseClickForConfirmation
    Instead, use the following calls immediately after initializing the SDK to handle the same behavior:
    • [Chartboost setShouldRequestInterstitialsInFirstSession:YES];
    • [Chartboost setShouldDisplayLoadingViewForMoreApps:YES];
    • [Chartboost setShouldPrefetchVideoContent:YES];
    • [Chartboost setShouldPauseClickForConfirmation:YES];

Showing/Caching Interstitials
  • [[Chartboost sharedChartboost] showInterstitial:CBLocationHomeScreen]; is now [Chartboost showInterstitial:CBLocationHomeScreen];
  • [[Chartboost sharedChartboost] cacheInterstitial:CBLocationHomeScreen]; is now [Chartboost cacheInterstitial:CBLocationHomeScreen];

Showing/Caching MoreApps Pages
  • [[Chartboost sharedChartboost] showMoreApps:CBLocationHomeScreen]; is now [Chartboost showMoreApps:CBLocationHomeScreen];
  • [[Chartboost sharedChartboost] cacheMoreApps:CBLocationHomeScreen]; is now [Chartboost cacheMoreApps:CBLocationHomeScreen];

Post-Install Analytics

If you’ll be offering in-app purchases in your game, integrate Post-Install Analytics: You’ll unlock useful data – revenue, ARPU, retention, levels, and more – to build custom user groups for publisher segmentation, retargeting, or UA campaign optimization.


RootView

If you're setting Chartboost to your rootview to show an interstitial, we've made it easier to do so in our 6.x SDK! Now you can simply show an interstitial in the view that you are in, like so:

[Chartboost showInterstitial:{view Controller} location:CBLocationHomeScreen];

//When you don’t need to pass a specific view:

[Chartboost showInterstitial:CBLocationHomeScreen];
Upgrading From Old SDKs (pre v4.4)

Old init method:

    Chartboost *cb = [Chartboost sharedChartboost];
    cb.appId = @"YOUR_CHARTBOOST_APP_ID";
    cb.appSignature = @"YOUR_CHARTBOOST_APP_SIGNATURE";
        
    cb.delegate = self;
    [cb startSession];

New init method:

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions       
{
    // Initialize the Chartboost library
    [Chartboost startWithAppId:@"YOUR_CHARTBOOST_APP_ID" 
                  appSignature:@"YOUR_CHARTBOOST_APP_SIGNATURE" 
                      delegate:self];

(All calls now require a location. CBLocation is a set of recommended location strings.