이 페이지에서 지원되는 모든 모바일 사용 사례 목록을 확인할 수 있습니다. 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()