Add the required dependencies to your project by including them in the app's Gradle file.
Copied to your clipboardimplementation(platform("com.adobe.marketing.mobile:sdk-bom:3.+"))implementation("com.adobe.marketing.mobile:core")implementation("com.adobe.marketing.mobile:lifecycle")
Using dynamic dependency versions is not recommended for production apps. Please read the managing Gradle dependencies guide for more information.
Add the required dependencies to your project by including them in the app's Gradle file.
Copied to your clipboardimplementation platform('com.adobe.marketing.mobile:sdk-bom:3.+')implementation 'com.adobe.marketing.mobile:core'implementation 'com.adobe.marketing.mobile:lifecycle'
Using dynamic dependency versions is not recommended for production apps. Please read the managing Gradle dependencies guide for more information.
Add the required dependencies to your project using CocoaPods. Add following pods in your Podfile
:
Copied to your clipboarduse_frameworks!target 'YourTargetApp' dopod 'AEPCore', '~> 5.0'pod 'AEPLifecycle', '~> 5.0'end
Java
Add the following to each Android Activity class.
Copied to your clipboardimport com.adobe.marketing.mobile.MobileCore;import com.adobe.marketing.mobile.Lifecycle;...
Copied to your clipboard@Overridepublic void onResume() {MobileCore.setApplication(getApplication());MobileCore.lifecycleStart(null);}
Copied to your clipboard@Overridepublic void onPause() {MobileCore.lifecyclePause();}
Kotlin
Add the following to each Android Activity class.
Copied to your clipboardimport com.adobe.marketing.mobile.MobileCoreimport com.adobe.marketing.mobile.Lifecycle...
Copied to your clipboardoverride fun onResume() {MobileCore.setApplication(this.application)MobileCore.lifecycleStart(null)}
Copied to your clipboardoverride fun onPause() {MobileCore.lifecyclePause()}
Copied to your clipboardHashMap<String, Object> additionalContextData = new HashMap<String, Object>();contextData.put("myapp.category", "Game");MobileCore.lifecycleStart(additionalContextData);
Copied to your clipboardMobileCore.lifecycleStart(mapOf("myapp.category" to "Game"))
Copied to your clipboardMobileCore.lifecycleStart(additionalContextData: ["myapp.category": "Game"])
Copied to your clipboard[AEPMobileCore lifecycleStart:@{@"myapp.category": @"Game"}];
Copied to your clipboardimport com.adobe.marketing.mobile.MobileCore;import com.adobe.marketing.mobile.Lifecycle;public class MobileApp extends Application {@Overrideprotected void onCreate() {super.onCreate();registerActivityLifecycleCallbacks(new ActivityLifecycleCallbacks() {@Overridepublic void onActivityResumed(Activity activity) {MobileCore.setApplication(activity.getApplication());MobileCore.lifecycleStart(null);}@Overridepublic void onActivityPaused(Activity activity) {MobileCore.lifecyclePause();}// the following methods aren't needed for our lifecycle purposes, but are// required to be implemented by the ActivityLifecycleCallbacks object@Overridepublic void onActivityCreated(Activity activity, Bundle savedInstanceState) {}@Overridepublic void onActivityStarted(Activity activity) {}@Overridepublic void onActivityStopped(Activity activity) {}@Overridepublic void onActivitySaveInstanceState(Activity activity, Bundle outState) {}@Overridepublic void onActivityDestroyed(Activity activity) {}});...}...}
Copied to your clipboardimport com.adobe.marketing.mobile.MobileCoreimport com.adobe.marketing.mobile.Lifecycleclass MobileApp : Application() {override fun onCreate() {super.onCreate()registerActivityLifecycleCallbacks(object: ActivityLifecycleCallbacks {override fun onActivityResumed(activity: Activity) {MobileCore.setApplication(activity.application)MobileCore.lifecycleStart(null)}override fun onActivityPaused(activity: Activity) {MobileCore.lifecyclePause()}// the following methods aren't needed for our lifecycle purposes, but are// required to be implemented by the ActivityLifecycleCallbacks objectoverride fun onActivityCreated(activity: Activity, savedInstanceState: Bundle?) {}override fun onActivityStarted(activity: Activity) {}override fun onActivityStopped(activity: Activity) {}override fun onActivitySaveInstanceState(activity: Activity, outState: Bundle) {}override fun onActivityDestroyed(activity: Activity) {}})...}...}
Copied to your clipboardfunc application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool {let appState = application.applicationStateMobileCore.registerExtensions([Lifecycle.self, ...], {if appState != .background {// only start lifecycle if the application is not in the backgroundMobileCore.lifecycleStart(additionalContextData: nil)}}}
Copied to your clipboard- (BOOL) application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {const UIApplicationState appState = application.applicationState;[AEPMobileCore registerExtensions:@[AEPMobileLifecycle.class, ...] completion:^{// only start lifecycle if the application is not in the backgroundif (appState != UIApplicationStateBackground) {[AEPMobileCore lifecycleStart:nil];}}];}
In iOS 13 and later, for a scene-based application, use the UISceneDelegate
as follows:
Copied to your clipboardfunc sceneWillEnterForeground(_ scene: UIScene) {MobileCore.lifecycleStart(additionalContextData: nil)}
Copied to your clipboardfunc sceneDidEnterBackground(_ scene: UIScene) {MobileCore.lifecyclePause()}
In iOS 12 and earlier, use the UIApplicationDelegate
as follows:
Copied to your clipboardfunc applicationWillEnterForeground(_ application: UIApplication) {MobileCore.lifecycleStart(additionalContextData: nil)}
Copied to your clipboardfunc applicationDidEnterBackground(_ application: UIApplication) {MobileCore.lifecyclePause()}
In iOS 13 and later, for a scene-based application, use the UISceneDelegate
as follows:
Copied to your clipboard- (void) sceneWillEnterForeground:(UIScene *)scene {[AEPMobileCore lifecycleStart:nil];}
Copied to your clipboard- (void) sceneDidEnterBackground:(UIScene *)scene {[AEPMobileCore lifecyclePause];}
In iOS 12 and earlier, use the UIApplicationDelegate
as follows:
Copied to your clipboard- (void) applicationWillEnterForeground:(UIApplication *)application {[AEPMobileCore lifecycleStart:nil];}
Copied to your clipboard- (void) applicationDidEnterBackground:(UIApplication *)application {[AEPMobileCore lifecyclePause];}