Show Menu
主题×

Adobe Campaign Standard 中支持的移动使用案例

在本页中,您将找到使用中支持的每个移动用例 Adobe Campaign Standard 的列表 Adobe Experience Platform SDKs。 请注意,支持这些使用案例需要安装和配置 Adobe Experience Platform SDKs、 Adobe Experience Platform Launch和 Adobe Campaign Standard。 For more information on this, refer to this page .
Adobe Campaign Standard支持以下用例:
要配置这些用例,您需要以下扩展 Experience Platform Launch:

在Campaign Standard中注册移动用户档案

使用iOS

在iOS中,以下是 Experience Platform APIs 必需的:
  • Lifecycle Start 、应用程序启动时和应用程序处于前台时。
  • Lifecycle Pause , when the app is background.
有关详细信息,请参 阅iOS中的生命周期扩展
以下是iOS中此用例的实现示例:
 func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {
  
  
 ACPCore.setLogLevel(.debug)
 appId = SettingsBundle.getLaunchAppId()
   
 //===== START Set up Adobe SDK =====
 ACPCore.configure(withAppId: appId)
   
 ACPCampaign.registerExtension()
 ACPIdentity.registerExtension()
 ACPLifecycle.registerExtension()
 ACPUserProfile.registerExtension()
 ACPSignal.registerExtension()
 ACPCore.start()
 ACPCore.lifecycleStart(nil)
   
 return true
 }
  
func applicationDidEnterBackground(_ application: UIApplication) {
 ACPCore.lifecyclePause()
 }
   
 func applicationDidBecomeActive(_ application: UIApplication) {
 // Workaround until jira AMSDK-7411 is fixed.
 sleep(2)
 ACPCore.lifecycleStart(nil)
 }

使用Android

在Android中,以下是 Experience Platform APIs 必需的:
  • OnResume
  • OnPause
有关详细信息,请参 阅Android中的生命周期扩展
以下是Android的此用例实施示例:
@Override
  
public void onResume() {
 super.onResume();
 MobileCore.setApplication(getApplication());
 MobileCore.lifecycleStart(null);
 handleOpenTracking();
 }
  
 @Override
 public void onPause() {
 super.onPause();
 MobileCore.lifecyclePause();
 }

向Adobe Campaign Standard发送推送令牌

使用iOS

在iOS中,需要 Experience Platform SDK 满足以下条件:
以下是iOS的此用例实施示例:
func application(_ application: UIApplication, didRegisterForRemoteNotificationsWithDeviceToken deviceToken: Data) {
  
 // Register Device Token
 ACPCore.setPushIdentifier(deviceToken)

使用Android

在Android中,需要 Experience Platform SDK 执行以下操作:
以下是Android的此用例实施示例:
@Override
public void onNewToken(String token) {
    Log.d(TAG, "Refreshed token: " + token);
    MobileCore.setPushIdentifier(token);
}

使用应用程序中的自定义用户档案丰富移动数据

要使此用例正常工作,您需要为PII回传创建规则。 有关详细信息,请参 阅PII回传

使用iOS

在iOS中,需要 Experience Platform API 满足以下条件:
  • collectPII有
    关详细信息,请参阅collectPII。
以下是iOS中此用例的实现示例:
ACPCore.collectPii(["email":email, "firstName":firstName, "lastName":lastName])

使用Android

在Android中,需要 Experience Platform API 执行以下操作:
  • collectPII有
    关详细信息,请参阅collectPII。
以下是Android的此用例实施示例:
HashMap<String, String> data = new HashMap<>();
data.put("firstName", firstNameText);
data.put("lastName", lastNameText);
data.put("email", emailText);
MobileCore.collectPii(data);

利用应用程序中的生命周期数据丰富移动用户档案

要使此用例正常工作,您需要为PII回传创建规则。 有关详细信息,请参 阅PII回传
Adobe Campaign不区分自定义数据或移动应用程序中的生命周期数据。 这两种类型的数据都可以使用collectPii回传规则发送到服务器以响应移动应用程序中的事件。

使用iOS

在iOS中,以下是 Experience Platform APIs 必需的:
  • Lifecycle Start 、应用程序启动时和应用程序处于前台时。
  • Lifecycle Pause , when the app is background.
有关详细信息,请参 阅iOS中的生命周期扩展
以下是iOS中此用例的实现示例:
func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {
  
  
 ACPCore.setLogLevel(.debug)
 appId = SettingsBundle.getLaunchAppId()
   
 //===== START Set up Adobe SDK =====
 ACPCore.configure(withAppId: appId)
   
 ACPCampaign.registerExtension()
 ACPIdentity.registerExtension()
 ACPLifecycle.registerExtension()
 ACPUserProfile.registerExtension()
 ACPSignal.registerExtension()
 ACPCore.start()
 ACPCore.lifecycleStart(nil)
   
 return true
 }
  
func applicationDidEnterBackground(_ application: UIApplication) {
 ACPCore.lifecyclePause()
 }
   
 func applicationDidBecomeActive(_ application: UIApplication) {
 // Workaround until jira AMSDK-7411 is fixed.
 sleep(2)
 ACPCore.lifecycleStart(nil)
 }

使用Android

在Android中,以下是 Experience Platform APIs 必需的:
  • OnResume
  • OnPause
有关详细信息,请参 阅Android中的生命周期扩展
以下是Android的此用例实施示例:
@Override
  
public void onResume() {
 super.onResume();
 MobileCore.setApplication(getApplication());
 MobileCore.lifecycleStart(null);
 handleOpenTracking();
 }
  
 @Override
 public void onPause() {
 super.onPause();
 MobileCore.lifecyclePause();
 }

使用推送通知跟踪用户交互

您需要为推送通知跟踪回发创建规则。 有关详细信息,请参 阅推送通知跟踪回发

使用iOS

在iOS中,需要 Experience Platform SDK 满足以下条件:
以下是iOS中此用例的实现示例:
let deliveryId = userInfo["_dId"] as? String
let broadlogId = userInfo["_mId"] as? String
if (deliveryId != nil && broadlogId != nil) {
    ACPCore.trackAction("tracking", data: ["deliveryId": deliveryId!, "broadlogId": broadlogId!, "action":"2"])
}

使用Android

在Android中,需要 Experience Platform SDK 执行以下操作:
以下是Android的此用例实施示例:
contextData.put("deliveryId", deliveryId);
contextData.put("broadlogId", messageId);
contextData.put("action", "2");
MobileCore.trackAction("tracking", contextData);

在应用程序中实施自定义事件以触发应用程序内消息

使用iOS

在iOS中,需要 Experience Platform SDK 满足以下条件:
以下是iOS中此用例的实现示例:
ACPCore.trackAction(mobileEventName, data: [:] )

使用Android

在Android中,需要 Experience Platform SDK 执行以下操作:
以下是Android的此用例实施示例:
MobileCore.trackAction(mobileEventText, new HashMap<String,String>());

设置链接字段以进行其他身份验证

使用iOS

要为基于iOS中应用程序内消息的用户档案模板设置链接字段以进行其他身份验证,需 Experience Platform SDK 要:
以下是iOS中此用例的实现示例。
要设置链接字段:
var linkageFields = [String: String]()
linkageFields["cusEmail"] = "john.doe@email.com"
ACPCampaign.setLinkageFields(linkageFields)

要重置链接字段:
ACPCampaign.resetLinkageFields(linkageFields)

使用Android

要为基于Android中的应用程序内消息的用户档案模板设置链接字段以进行其他身份验证,需要以下Experience PlatformSDK:
以下是此用例在Android上的实现示例。
要设置链接字段:
HashMap<String, String> linkageFields = new HashMap<String, String>();
linkageFields.put("cusEmail", "john.doe@email.com");
Campaign.setLinkageFields(linkageFields);

要重置链接字段:
Campaign.resetLinkageFields()