이 페이지에서는에서 지원되는 모든 모바일 사용 사례 목록을 찾을 수 있습니다. Adobe Campaign Standard 사용 Adobe Experience Platform SDKs. 이러한 사용 사례를 지원하는 데 설치 및 구성이 포함됩니다 Adobe Experience Platform SDKs, tags in Adobe Experience Platform, 및 Adobe Campaign Standard. 자세한 내용은 다음을 참조하십시오 페이지.
Adobe Campaign Standard은 다음 사용 사례를 지원합니다.
이러한 사용 사례를 구성하려면 다음 확장이 필요합니다.
iOS에서 다음을 수행합니다 Experience Platform APIs 필수 여부:
자세한 내용은 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에서 다음을 수행합니다 Experience Platform APIs 필수 여부:
자세한 내용은 Android의 라이프사이클 확장.
다음은 Android에서 이 사용 사례를 위한 샘플 구현입니다.
@Override
public void onResume() {
super.onResume();
MobileCore.setApplication(getApplication());
MobileCore.lifecycleStart(null);
handleOpenTracking();
}
@Override
public void onPause() {
super.onPause();
MobileCore.lifecyclePause();
}
iOS에서 다음을 수행합니다 Experience Platform SDK 필수 여부:
다음은 iOS의 이 사용 사례에 대한 샘플 구현입니다.
func application(_ application: UIApplication, didRegisterForRemoteNotificationsWithDeviceToken deviceToken: Data) {
// Register Device Token
ACPCore.setPushIdentifier(deviceToken)
Android에서 다음을 수행합니다 Experience Platform SDK 필수 여부:
다음은 Android에서 이 사용 사례에 대한 샘플 구현입니다.
@Override
public void onNewToken(String token) {
Log.d(TAG, "Refreshed token: " + token);
MobileCore.setPushIdentifier(token);
}
이 사용 사례가 작동하려면 PII 포스트백에 대한 규칙을 만들어야 합니다. 자세한 내용은 PII 포스트백.
iOS에서 다음을 수행합니다 Experience Platform API 필수 여부:
다음은 iOS에서 이 사용 사례를 구현하는 샘플입니다.
ACPCore.collectPii(["pushPlatform":"apns", "email":email, "firstName":firstName, "lastName":lastName])
Android에서 다음을 수행합니다 Experience Platform API 필수 여부:
다음은 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);
이 사용 사례가 작동하려면 PII 포스트백에 대한 규칙을 만들어야 합니다. 자세한 내용은 PII 포스트백.
Adobe Campaign은 사용자 지정 데이터 또는 라이프사이클 데이터와 모바일 앱을 구분하지 않습니다. 두 유형의 데이터를 모두 모바일 앱의 이벤트에 대한 응답으로 collectPii 포스트백 규칙을 사용하여 서버로 전송할 수 있습니다.
iOS에서 다음을 수행합니다 Experience Platform APIs 필수 여부:
자세한 내용은 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에서 다음을 수행합니다 Experience Platform APIs 필수 여부:
자세한 내용은 Android의 라이프사이클 확장.
다음은 Android에서 이 사용 사례를 위한 샘플 구현입니다.
@Override
public void onResume() {
super.onResume();
MobileCore.setApplication(getApplication());
MobileCore.lifecycleStart(null);
handleOpenTracking();
}
@Override
public void onPause() {
super.onPause();
MobileCore.lifecyclePause();
}
푸시 알림 추적 포스트백 규칙을 만들어야 합니다. 자세한 내용은 푸시 알림 추적 포스트백.
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에서 다음을 수행합니다 Experience Platform SDK 필수 여부:
다음은 Android에서 이 사용 사례를 위한 샘플 구현입니다.
contextData.put("deliveryId", deliveryId);
contextData.put("broadlogId", messageId);
contextData.put("action", "2");
MobileCore.trackAction("tracking", contextData);
iOS에서 다음을 수행합니다 Experience Platform SDK 필수 여부:
다음은 iOS에서 이 사용 사례를 구현하는 샘플입니다.
ACPCore.trackAction(mobileEventName, data: [:] )
Android에서 다음을 수행합니다 Experience Platform SDK 필수 여부:
다음은 Android에서 이 사용 사례를 위한 샘플 구현입니다.
MobileCore.trackAction(mobileEventText, new HashMap<String,String>());
iOS의 인앱 메시지를 기반으로 하는 프로필 템플릿에 대한 추가 인증에 대한 링크 필드를 설정하려면 다음을 수행하십시오 Experience Platform SDK 필수 여부:
다음은 iOS과 함께 이 사용 사례의 샘플 구현입니다.
링크 필드를 설정하려면 다음을 수행하십시오.
var linkageFields = [String: String]()
linkageFields["cusEmail"] = "john.doe@email.com"
ACPCampaign.setLinkageFields(linkageFields)
링크 필드를 재설정하려면 다음을 수행하십시오.
ACPCampaign.resetLinkageFields(linkageFields)
Android에서 인앱 메시지를 기반으로 하는 프로필 템플릿에 대한 추가 인증에 대한 링크 필드를 설정하려면 다음 Experience Platform SDK가 필요합니다.
다음은 Android에서 이 사용 사례의 샘플 구현입니다.
링크 필드를 설정하려면 다음을 수행하십시오.
HashMap<String, String> linkageFields = new HashMap<String, String>();
linkageFields.put("cusEmail", "john.doe@email.com");
Campaign.setLinkageFields(linkageFields);
링크 필드를 재설정하려면 다음을 수행하십시오.
Campaign.resetLinkageFields()