프로필 데이터 수집
모바일 앱에서 프로필 데이터를 수집하는 방법을 알아봅니다.
프로필 확장 기능을 사용하여 클라이언트에 사용자 관련 속성을 저장할 수 있습니다. 이 정보는 최적의 성능을 위해 서버에 연결할 필요 없이 나중에 온라인 또는 오프라인 시나리오 중에 메시지를 타겟팅하고 개인화하는 데 사용할 수 있습니다. 프로필 확장은 CSOP(클라이언트측 작업 프로필)를 관리하고, API에 대응하는 방법을 제공하고, 사용자 프로필 속성을 업데이트하고, 사용자 프로필 속성을 생성된 이벤트로 나머지 시스템과 공유합니다.
프로필 데이터는 다른 확장에서 프로필 관련 작업을 수행하는 데 사용됩니다. 프로필 데이터를 사용하고 프로필 데이터를 기반으로 규칙을 실행하는 규칙 엔진 확장의 예를 들 수 있습니다. 설명서에서 프로필 확장에 대해 자세히 알아보세요
전제 조건
- SDK가 설치 및 구성된 앱을 빌드하고 실행했습니다.
학습 목표
이 단원에서는 다음 작업을 수행합니다.
- 사용자 속성을 설정하거나 업데이트합니다.
- 사용자 속성을 검색합니다.
사용자 특성 설정 및 업데이트
사용자의 과거 또는 최근 구매 여부를 빠르게 파악하려면 앱의 타겟팅 및/또는 개인화에 유용합니다. Luma 앱에서 설정해 보겠습니다.
-
Xcode 프로젝트 탐색기에서 Luma > Luma > Utils > MobileSDK(으)로 이동하여
func updateUserAttribute(attributeName: String, attributeValue: String)
함수를 찾습니다. 다음 코드를 추가합니다.code language-swift // Create a profile map, add attributes to the map and update profile using the map var profileMap = [String: Any]() profileMap[attributeName] = attributeValue UserProfile.updateUserAttributes(attributeDict: profileMap)
이 코드:
-
profileMap
(이)라는 빈 사전을 설정합니다. -
attributeName
(예:isPaidUser
) 및attributeValue
(예:yes
)을(를) 사용하여 사전에 요소를 추가합니다. -
profileMap
사전을UserProfile.updateUserAttributes
API 호출의attributeDict
매개 변수에 대한 값으로 사용합니다.
-
-
Xcode 프로젝트 탐색기에서 Luma > Luma > Views > Products > ProductView(으)로 이동하여
updateUserAttributes
(구매용 코드 내)에 대한 호출을 찾습니다 {width="15"} 단추). 다음 코드를 추가합니다.code language-swift // Update attributes MobileSDK.shared.updateUserAttribute(attributeName: "isPaidUser", attributeValue: "yes")
사용자 속성 가져오기
사용자의 속성을 업데이트하면 다른 Adobe SDK에서 사용할 수 있지만, 속성을 명시적으로 검색하여 앱이 원하는 대로 동작하도록 할 수도 있습니다.
-
Xcode 프로젝트 탐색기에서 Luma > Luma > Views > General > HomeView(으)로 이동하여
.onAppear
수정자를 찾습니다. 다음 코드를 추가합니다.code language-swift // Get attributes UserProfile.getUserAttributes(attributeNames: ["isPaidUser"]) { attributes, error in if attributes?.count ?? 0 > 0 { if attributes?["isPaidUser"] as? String == "yes" { showBadgeForUser = true } else { showBadgeForUser = false } } }
이 코드:
-
attributeNames
배열에서 단일 요소로isPaidUser
특성 이름이 있는UserProfile.getUserAttributes
API를 호출합니다. -
그런 다음
isPaidUser
특성의 값을 확인하고yes
이(가) 오른쪽 상단의 도구 모음에 있는{width="20"}
아이콘
-
추가 설명서는 여기에서 찾을 수 있습니다.
Assurance를 사용한 유효성 검사
-
설치 지침 섹션을 검토하여 시뮬레이터 또는 장치를 Assurance에 연결하십시오.
-
앱을 실행하여 로그인하고 제품과 상호 작용합니다.
-
Assurance 아이콘을 왼쪽으로 이동합니다.
-
탭 표시줄에서 홈 을(를) 선택합니다.
-
로그인 시트를 열려면 다음을 선택합니다 {width="15"} 단추입니다.
{width="300"}
-
임의의 이메일과 고객 ID를 삽입하려면 {width="15"} 단추 .
-
로그인 을 선택합니다.
{width="300"}
-
탭 표시줄에서 Products 을(를) 선택합니다.
-
제품 하나를 선택하십시오.
-
선택 {width="15"}.
-
선택 {width="20"}.
-
선택 {width="15"}.
{width="300"}
-
홈 화면으로 돌아갑니다. 배지가 추가된 것을 확인해야 합니다 {width="15"}.
{width="300"}
-
-
Assurance UI에 업데이트된
profileMap
값이 있는 UserProfileUpdate 및 getUserAttributes 이벤트가 표시됩니다.
다음: 위치 사용