Adobe Campaign Standard 中支持的移动使用案例 mobile-use-cases
在此页面中,您将使用Adobe Experience Platform SDKs找到Adobe Campaign Standard中支持的每个移动使用案例的列表。 请注意,支持这些用例涉及安装和配置Adobe Experience Platform SDKs、tags in Adobe Experience Platform和Adobe Campaign Standard。 有关此内容的详细信息,请参阅此页面。
Adobe Campaign Standard支持以下用例:
要配置这些用例,您需要以下扩展:
- Adobe Campaign Standard
要安装和配置Campaign Standard扩展,请参阅在数据收集UI中配置Campaign Standard扩展。 - Mobile Core,将自动安装。
有关Mobile Core扩展的更多信息,请参阅Mobile Core。 - Profile,将自动安装。
有关Profile扩展的更多信息,请参阅Profile。
在Campaign Standard中注册移动配置文件 register-mobile-profile
使用iOS register-mobile-profile-ios
在iOS中,需要以下Experience Platform APIs:
- Lifecycle Start,应用程序启动时以及应用程序处于前台时。
- Lifecycle Pause,应用程序处于后台时。
有关详细信息,请参阅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 register-mobile-profile-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 send-push-token
使用iOS send-push-token-ios
在iOS中,需要以下Experience Platform SDK:
- setPushIdentifier
有关详细信息,请参阅setPushIdentifier。
以下是iOS中此用例的实施示例:
func application(_ application: UIApplication, didRegisterForRemoteNotificationsWithDeviceToken deviceToken: Data) {
// Register Device Token
ACPCore.setPushIdentifier(deviceToken)
使用Android send-push-token-android
在Android中,需要以下Experience Platform SDK:
- setPushIdentifier
有关详细信息,请参阅setPushIdentifier。
以下是Android中此用例的实施示例:
@Override
public void onNewToken(String token) {
Log.d(TAG, "Refreshed token: " + token);
MobileCore.setPushIdentifier(token);
}
使用来自应用程序的自定义数据扩充移动用户档案 enrich-mobile-profile-custom
要使此用例正常工作,您需要为PII回发创建规则。 有关详细信息,请参阅PII回发。
使用iOS enrich-mobile-profile-custom-ios
在iOS中,需要以下Experience Platform API:
- collectPII
有关详细信息,请参阅collectPII。
以下是iOS中此用例的实施示例:
ACPCore.collectPii(["pushPlatform":"apns", "email":email, "firstName":firstName, "lastName":lastName])
使用Android enrich-mobile-profile-custom-android
在Android中,需要以下Experience Platform API:
- collectPII
有关详细信息,请参阅collectPII。
以下是Android中此用例的实施示例:
HashMap<String, String> data = new HashMap<>();
data.put("pushPlatform", "gcm");
data.put("firstName", firstNameText);
data.put("lastName", lastNameText);
data.put("email", emailText);
MobileCore.collectPii(data);
使用应用程序中的生命周期数据丰富移动用户档案 enrich-mobile-profile-lifecycle
要使此用例正常工作,您需要为PII回发创建规则。 有关详细信息,请参阅PII回发。
使用iOS enrich-mobile-profile-lifecycle-ios
在iOS中,需要以下Experience Platform APIs:
- Lifecycle Start,应用程序启动时以及应用程序处于前台时。
- Lifecycle Pause,应用程序处于后台时。
有关详细信息,请参阅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 enrich-mobile-profile-lifecycle-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();
}
跟踪用户与推送通知的交互 track-user-push
您需要为推送通知跟踪回发创建规则。 有关详细信息,请参阅推送通知跟踪回发。
使用iOS track-user-push-ios
在iOS中,需要以下Experience Platform SDK:
- trackAction。 有关详细信息,请参阅跟踪应用程序操作。
以下是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 track-user-push-android
在Android中,需要以下Experience Platform SDK:
- trackAction
有关详细信息,请参阅跟踪应用程序操作。
以下是Android中此用例的实施示例:
contextData.put("deliveryId", deliveryId);
contextData.put("broadlogId", messageId);
contextData.put("action", "2");
MobileCore.trackAction("tracking", contextData);
在应用程序中实施自定义事件以触发应用程序内消息 custom-event-inapp
使用iOS custom-event-inapp-ios
在iOS中,需要以下Experience Platform SDK:
- trackAction。 有关详细信息,请参阅跟踪应用程序操作。
以下是iOS中此用例的实施示例:
ACPCore.trackAction(mobileEventName, data: [:] )
使用Android custom-event-inapp-android
在Android中,需要以下Experience Platform SDK:
- trackAction
有关详细信息,请参阅跟踪应用程序操作。
以下是Android中此用例的实施示例:
MobileCore.trackAction(mobileEventText, new HashMap<String,String>());
设置链接字段以进行其他身份验证 linkage-fields-inapp
使用iOS linkage-fields-inapp-ios
要为基于iOS中的应用程序内消息的配置文件模板设置其他身份验证的链接字段,需要以下Experience Platform SDK:
以下是此用例在iOS中的实施示例。
要设置链接字段,请执行以下操作:
var linkageFields = [String: String]()
linkageFields["cusEmail"] = "john.doe@email.com"
ACPCampaign.setLinkageFields(linkageFields)
要重置链接字段,请执行以下操作:
ACPCampaign.resetLinkageFields(linkageFields)
使用Android linkage-fields-inapp-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()