Adobe Campaign Classic

Configure Campaign Classic extension in the Data Collection UI

  1. In the Data Collection UI, select the Extensions tab.

  2. On the Catalog tab, locate the Adobe Campaign Classic extension, and select Install.

  3. Type in the settings for your extension.

  4. Select Save.

  5. Complete the publishing process to update the SDK configuration.

    For more information about publishing, see the publishing overview.

Configure Campaign Classic extension

Configuring the Campaign Classic extension

data-variant=info
data-slots=text
You can retrieve your Campaign Classic registration or tracking endpoint URLs in the Campaign Classic interface under the Tools > Advanced > Deployment wizard menu. The endpoint for push notifications is usually the same as the URL that is used for web forms and surveys.

Registration endpoints

Type the registration endpoint URL(s) for your Campaign Classic instances. You can specify up to three unique endpoints for your development, staging, and production environments. Registration endpoints are required for all three environments before the configuration can be saved.

data-variant=warning
data-slots=text
For this extension, the registration endpoint URLs must be entered as hostnames without protocol prefixes (for example, use mkt.campaign.adobe.com instead of https://mkt.campaign.adobe.com).

Default tracking endpoints

Type the default tracking endpoint URL(s) for your Campaign Classic instances. Like the registration URLs, you can specify up to three unique endpoints for your development, staging, and production environments. Default tracking endpoints are required for all three environments before the configuration can be saved.

data-variant=warning
data-slots=text
For this extension, the tracking endpoint URLs must be entered as hostnames without protocol prefixes (for example, use mkt.campaign.adobe.com instead of https://mkt.campaign.adobe.com).

Tracking Endpoints Mapping

Each environment (development, staging, and production) supports an optional list of tracking endpoint mappings. Each mapping consists of an identifier and an endpoint, where the endpoint must be a hostname without a protocol prefix. Use tracking endpoint mappings to route tracking requests to different servers based on a given identifier.

To add a mapping, enter an identifier and endpoint in the input row and select the + button. Saved mappings appear below the input row and can be removed individually. The mappings are stored as a JSON array of {identifier, endpoint} pairs.

Integration key (iOS)

You can specify up to three unique iOS integration keys for your development, staging, and production environments. iOS integration keys are generated after creating a service that contains iOS applications using the Campaign Classic client console. For more information on where to find the integration key, see the tutorial on configuring the mobile application in Adobe Campaign.

Integration key (Android)

You can specify up to three unique Android integration keys for your development, staging, and production environments. Android integration keys are generated after creating a service that contains Android applications using the Campaign Classic client console. For more information on where to find the integration key, see the tutorial on configuring the mobile application in Adobe Campaign.

Request timeout

The request timeout is the amount of time, in seconds, to wait for a response from the registration or tracking endpoint before timing out. The SDK default timeout value is 30 seconds. Valid values range from 0 to 30.

Add the Campaign Classic extension to your app

Include Campaign Classic extension as an app dependency

Add the MobileCore and Campaign Classic dependencies in your app's Gradle file.

Android Kotlin

Add the required dependencies to your project by including them in the app's Gradle file.

implementation(platform("com.adobe.marketing.mobile:sdk-bom:3.+"))
implementation("com.adobe.marketing.mobile:core")
implementation("com.adobe.marketing.mobile:lifecycle")
implementation("com.adobe.marketing.mobile:campaignclassic")
data-variant=warning
data-slots=text
Using dynamic dependency versions is not recommended for production apps. Please read the managing Gradle dependencies guide for more information.

Android Groovy

Add the required dependencies to your project by including them in the app's Gradle file.

implementation platform('com.adobe.marketing.mobile:sdk-bom:3.+')
implementation 'com.adobe.marketing.mobile:core'
implementation 'com.adobe.marketing.mobile:lifecycle'
implementation 'com.adobe.marketing.mobile:campaignclassic'
data-variant=warning
data-slots=text
Using dynamic dependency versions is not recommended for production apps. Please read the managing Gradle dependencies guide for more information.

iOS CocoaPods

Add the required dependencies to your project using CocoaPods. Add following pods in your Podfile:

use_frameworks!

target 'YourTargetApp' do
  pod 'AEPCore', '~> 5.0'
  pod 'AEPCampaignClassic', '~> 5.0'
end

Initialize Adobe Experience Platform SDK with Campaign Classic Extension

Next, initialize the SDK by registering all the solution extensions that have been added as dependencies to your project with Mobile Core. For detailed instructions, refer to the initialization section of the getting started page.

Using the MobileCore.initialize API to initialize the Adobe Experience Platform Mobile SDK simplifies the process by automatically registering solution extensions and enabling lifecycle tracking.

Android Kotlin

data-variant=warning
data-slots=text
This API is available starting from Android BOM version 3.8.0.
import com.adobe.marketing.mobile.LoggingMode
import com.adobe.marketing.mobile.MobileCore
...
import android.app.Application
...

class MainApp : Application() {
  override fun onCreate() {
    super.onCreate()
    MobileCore.setLogLevel(LoggingMode.DEBUG)
    MobileCore.initialize(this, "ENVIRONMENT_ID")
  }
}

Android Java

data-variant=warning
data-slots=text
This API is available starting from Android BOM version 3.8.0.
import com.adobe.marketing.mobile.LoggingMode;
import com.adobe.marketing.mobile.MobileCore;
...
import android.app.Application;
...
public class MainApp extends Application {
  @Override
  public void onCreate(){
    super.onCreate();
    MobileCore.setLogLevel(LoggingMode.DEBUG);
    MobileCore.initialize(this, "ENVIRONMENT_ID");
  }
}

iOS Swift

data-variant=warning
data-slots=text
This API is available starting from iOS version 5.4.0.
// AppDelegate.swift
import AEPCore
import AEPServices
...

final class AppDelegate: NSObject, UIApplicationDelegate {
  func application(_: UIApplication, didFinishLaunchingWithOptions _: [UIApplication.LaunchOptionsKey: Any]? = nil) -> Bool {
    MobileCore.setLogLevel(.debug)
    MobileCore.initialize(appId: "ENVIRONMENT_ID")
    ...
  }
}

iOS Objective-C

data-variant=warning
data-slots=text
This API is available starting from iOS version 5.4.0.
// AppDelegate.m
#import "AppDelegate.h"
@import AEPCore;
@import AEPServices;
...
@implementation AppDelegate
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
  [AEPMobileCore setLogLevel: AEPLogLevelDebug];  
  [AEPMobileCore initializeWithAppId:@"ENVIRONMENT_ID" completion:^{
      NSLog(@"AEP Mobile SDK is initialized");
  }];
  ...
  return YES;
}
@end

Configuration keys

To update SDK configuration programmatically, use the following information to change your Campaign Classic configuration values. For more information, see the Configuration API reference.

Key
Required
Description
Data Type
build.environment
Yes
Specifies which environment to use (prod, dev, or staging) when sending registration and tracking information. It is also used to specify which mobile app integration key to use.
String
campaignclassic.timeout
No
Specifies the amount of time to wait for a response from the Campaign Classic registration or tracking server. Default is 30 seconds, with a valid range of 0 to 30.
Integer
campaignclassic.marketingServer
Yes
Sets the marketing server, which receives registration requests. Must be a hostname without a protocol prefix.
String
campaignclassic.trackingServer
Yes
Sets the tracking server, which receives tracking requests. Must be a hostname without a protocol prefix.
String
campaignclassic.trackingEndpointsMapping
No
A JSON array string of tracking endpoint mappings. Each entry is an object with identifier and endpoint fields, where the endpoint must be a hostname without a protocol prefix. Default is [].
String
campaignclassic.ios.integrationKey
Yes
Sets the iOS mobile app integration key, which links the app to an iOS application campaign in Campaign Classic.
String
campaignclassic.android.integrationKey
Yes
Sets the Android mobile app integration key, which links the app to an Android application campaign in Campaign Classic.
String