위치 사용

앱에서 위치 지리적 위치 서비스를 사용하는 방법을 알아봅니다.

Adobe Experience Platform 데이터 수집 위치 서비스 는 위치를 인식하는 모바일 앱이 위치 컨텍스트를 이해할 수 있도록 해주는 지리적 위치 서비스입니다. 이 서비스는 유연한 관심 영역(POI) 데이터베이스를 동반하는 풍부하고 사용하기 쉬운 SDK 인터페이스를 사용합니다.

전제 조건

  • 모든 패키지 종속성은 Xcode 프로젝트에 있습니다.
  • AppDelegate에 등록된 확장입니다.
  • 개발 appId를 사용하도록 MobileCore를 구성했습니다.
  • 가져온 SDK.
  • 위의 변경 사항으로 앱을 빌드하고 실행했습니다.

학습 목표

이 단원에서는 다음과 같은 작업을 수행합니다

  • Places 서비스의 관심 영역을 정의하는 방법을 이해합니다.
  • Places 확장으로 태그 속성을 업데이트합니다.
  • 스키마를 업데이트하여 지리적 위치 이벤트를 캡처합니다.
  • Assurance에서 설정의 유효성을 검사합니다.
  • 앱을 업데이트하여 Places 확장을 등록합니다.
  • 앱의 위치 서비스에서 지리적 위치 추적을 구현합니다.

설정

Places 서비스가 앱 내에서 및 Mobile SDK 내에서 작동하려면 일부 설정을 수행해야 합니다.

위치 정의

Places 서비스에서 일부 관심 영역을 정의합니다.

  1. 데이터 수집 UI에서 위치 ​를 선택합니다.
  2. 자세히 를 선택하세요.
  3. 컨텍스트 메뉴에서 라이브러리 관리 ​를 선택합니다.
    라이브러리 관리
  4. 라이브러리 관리 대화 상자에서 새로 만들기 ​를 선택합니다.
  5. 라이브러리 만들기 대화 상자에서 이름(예: Luma)을 입력하십시오.
  6. 확인 ​을 선택합니다.
    라이브러리 만들기
  7. 라이브러리 관리 대화 상자를 닫으려면 닫기 ​를 선택합니다.
  8. POI 관리 ​로 돌아가서 POI 가져오기 ​를 선택하십시오.
  9. 위치 가져오기 대화 상자에서 시작 ​을 선택합니다.
  10. 라이브러리 목록에서 Luma ​을(를) 선택합니다.
  11. 다음 ​을 선택합니다.
    라이브러리 선택
  12. Luma POIs ZIP 파일을 다운로드하고 컴퓨터의 위치에 추출합니다.
  13. 위치 가져오기 대화 상자에서 추출한 luma_pois.csv 파일을 CSV 파일 선택 - 파일 드래그 앤 드롭 ​에 끌어다 놓습니다. 유효성 검사 성공 - CSV 파일의 유효성을 검사했습니다 ​가 표시됩니다.
  14. 가져오기 시작 ​을 선택합니다. 성공 - 6개의 새 POI를 추가함 ​이 표시됩니다.
  15. 완료 ​를 선택합니다.
  16. POI 관리 ​에서 6개의 새로운 Luma 스토어가 목록에 추가됩니다. 목록 목록과 맵 맵 보기 간에 전환할 수 있습니다.
    위치 목록 .

위치 확장 설치

  1. 태그(으)로 이동하여 모바일 태그 속성을 찾은 다음 속성을 엽니다.

  2. 확장 ​을 선택하십시오.

  3. 카탈로그 ​를 선택하십시오.

  4. Places 확장을 검색합니다.

  5. 확장을 설치합니다.

    Offer Decisioning 및 Target 확장 추가

  6. 확장 설치 대화 상자에서:

    1. Luma ​라이브러리 선택​ 목록에서 ​을(를) 선택합니다.

    2. 작업 라이브러리(예: 초기 빌드)를 선택했는지 확인하십시오.

    3. 라이브러리에 저장 ​에서 라이브러리 및 빌드에 저장 ​을 선택합니다.

      위치 확장 설치 .

  7. 라이브러리가 다시 빌드되었습니다.

스키마 확인

스키마 만들기에 정의된 대로 스키마에 POI 및 지리적 위치 데이터를 수집하는 데 필요한 필드 그룹 및 클래스가 포함되어 있는지 확인합니다.

  1. 데이터 수집 인터페이스로 이동하여 왼쪽 레일에서 스키마 ​를 선택합니다.
  2. 상단 표시줄에서 찾아보기 ​를 선택합니다.
  3. 스키마를 선택하여 엽니다.
  4. 스키마 편집기에서 소비자 경험 이벤트 ​를 선택합니다.
  5. POI 인터랙션 및 지리적 위치 데이터를 캡처할 개체 및 필드가 있는 placeContext 개체가 표시됩니다.
    스키마 위치 .

태그 속성 업데이트

태그에 대한 위치 확장 기능은 지리적 위치 이벤트를 모니터링하고 이러한 이벤트를 기반으로 작업을 트리거할 수 있는 기능을 제공합니다. 이 기능을 사용하면 앱에서 구현해야 하는 API 코딩을 최소화할 수 있습니다.

데이터 요소

먼저 여러 데이터 요소를 만듭니다.

  1. 데이터 수집 UI에서 태그 속성으로 이동합니다.

  2. 왼쪽 레일에서 데이터 요소 ​를 선택합니다.

  3. 데이터 요소 추가 ​를 선택합니다.

  4. 데이터 요소 만들기 화면에서 Name - Entered과(와) 같은 이름을 입력하십시오.

  5. 확장 목록에서 위치 ​를 선택합니다.

  6. 데이터 요소 형식 목록에서 이름 ​을(를) 선택하십시오.

  7. TARGET 아래에서 현재 POI ​를 선택하십시오.

  8. 라이브러리에 저장 ​을 선택합니다.
    데이터 요소

  9. 아래 표의 정보를 사용하여 4~8단계를 반복하여 추가 데이터 요소를 만듭니다.

    table 0-row-4 1-row-4 2-row-4 3-row-4 4-row-4 5-row-4
    이름 확장 기능 데이터 요소 유형 TARGET
    Name - Exited 장소 이름 마지막으로 종료한 POI
    Category - Current 장소 카테고리 현재 POI
    Category - Exited 장소 카테고리 마지막으로 종료한 POI
    City - Current 장소 구/군/시 현재 POI
    City - Exited 장소 구/군/시 마지막으로 종료한 POI

    다음 데이터 요소 목록이 있어야 합니다.

    데이터 요소 목록

규칙

그런 다음 이러한 데이터 요소로 작업할 규칙을 정의합니다.

  1. 태그 속성의 왼쪽 레일에서 규칙 ​을 선택합니다.

  2. 규칙 추가 ​를 선택합니다.

  3. 규칙 만들기 화면에서 규칙 이름(예: POI - Entry)을 입력하십시오.

  4. 이벤트 아래의 추가 ​를 선택하십시오.

    1. 확장 목록에서 위치 ​를 선택하고 이벤트 유형 목록에서 POI 입력 ​을 선택합니다.

    2. 변경 내용 유지 ​를 선택합니다.

      이벤트 태그 .

  5. 작업 아래의 추가 ​을(를) 선택하십시오.

    1. 확장 목록에서 Mobile Core ​를 선택하고 작업 유형 ​에서 데이터 첨부 ​를 선택합니다. 이 작업은 페이로드 데이터를 첨부합니다.

    2. JSON 페이로드 ​에 다음 페이로드를 붙여 넣습니다.

      code language-json
      {
          "xdm": {
              "eventType": "location.entry",
              "placeContext": {
                  "geo": {
                      "city": "{%%City - Current%%}"
                  },
                  "POIinteraction": {
                      "poiDetail": {
                          "name": "{%%Name - Current%%}",
                          "category": "{%%Category - Current%%}"
                      },
                      "poiEntries": {
                          "value": 1
                      }
                  }
              }
          }
      }
      

      {%% ... %%}데이터 을(를) 선택하여 JSON에 데이터 요소 자리 표시자 값을 삽입할 수도 있습니다. 팝업 대화 상자를 통해 만든 데이터 요소를 선택할 수 있습니다.

    3. 변경 내용 유지 ​를 선택합니다.

      태그 작업

  6. Mobile Core - 데이터 첨부 작업 옆에 있는 추가 ​를 선택합니다.

    1. 확장 목록에서 Adobe Experience Platform Edge Network ​을 선택하고 Edge Network으로 이벤트 전달 ​을 선택합니다. 이 작업을 수행하면 이벤트 및 추가 페이로드 데이터가 Platform Edge Network에 전달됩니다.
    2. 변경 내용 유지 ​를 선택합니다.
  7. 규칙을 저장하려면 라이브러리에 저장 ​을 선택합니다.

    규칙

다른 규칙을 만들어 보겠습니다

  1. 규칙 만들기 화면에서 규칙 이름(예: POI - Exit)을 입력하십시오.

  2. 이벤트 아래의 추가 ​를 선택하십시오.

    1. 확장 목록에서 위치 ​를 선택하고 이벤트 유형 목록에서 POI 종료 ​를 선택합니다.
    2. 변경 내용 유지 ​를 선택합니다.
  3. 작업 아래의 추가 ​을(를) 선택하십시오.

    1. 확장 목록에서 Mobile Core ​을 선택하고 작업 유형 목록에서 데이터 첨부 ​를 선택합니다.

    2. JSON 페이로드 ​에 다음 페이로드를 붙여 넣습니다.

      code language-json
      {
          "xdm": {
              "eventType": "location.exit",
              "placeContext": {
                  "geo": {
                      "city": "{%%City - Exited%%}"
                  },
                  "POIinteraction": {
                      "poiExits": {
                          "value": 1
                      },
                      "poiDetail": {
                          "name": "{%%Name - Exited%%}",
                          "category": "{%%Category - Exited%%}"
                      }
                  }
              }
          }
      }
      
    3. 변경 내용 유지 ​를 선택합니다.

  4. Mobile Core - 데이터 첨부 작업 옆에 있는 추가 ​를 선택합니다.

    1. 확장 목록에서 Adobe Experience Platform Edge Network ​을 선택하고 Edge Network으로 이벤트 전달 ​을 선택합니다.
    2. 변경 내용 유지 ​를 선택합니다.
  5. 규칙을 저장하려면 라이브러리에 저장 ​을 선택합니다.

    규칙

태그의 모든 변경 사항이 게시되도록 하려면

  1. 빌드할 라이브러리로 초기 빌드 ​를 선택합니다.
  2. 빌드 ​를 선택합니다.
    라이브러리 빌드

Assurance에서 설정 유효성 검사

Assurance에서 설정의 유효성을 검사하려면:

  1. Assurance UI로 이동합니다.
  2. 왼쪽 레일에서 아직 사용할 수 없는 경우 왼쪽 레일에서 구성 ​을 선택하고 이벤트 옆의 추가 ​을(를) 선택한 다음 장소 서비스 아래의 맵 및 시뮬레이션 ​을(를) 선택합니다.
  3. 저장 ​을 선택합니다.
  4. 왼쪽 레일에서 맵 및 시뮬레이션 ​을 선택합니다.
  5. 지도를 POI 중 하나의 위치로 이동합니다.
  6. 톱니바퀴 부하 POI를 시뮬레이션하도록 선택합니다. POI는 원과 핀을 사용하여 식별됩니다.
  7. POI를 선택합니다.
  8. 팝업에서 톱니바퀴 시작 이벤트 시뮬레이션 ​을 선택합니다.
    시작 이벤트 시뮬레이션
  9. 왼쪽 레일에서 이벤트 ​를 선택하면 시뮬레이션한 이벤트가 표시됩니다.
    AJO 의사 결정 유효성 검사

앱의 위치 구현

이전 단원에서 설명한 대로 모바일 태그 확장을 설치하면 구성만 제공됩니다. 그런 다음 Places SDK을 설치하고 등록해야 합니다. 이 단계가 명확하지 않으면 SDK 설치 섹션을 검토하십시오.

NOTE
SDK 설치 섹션을 완료한 경우 위치 SDK이 이미 설치되어 있으므로 이 단계를 건너뛸 수 있습니다.
  1. Xcode에서 패키지 종속 항목의 패키지 목록에 AEP Places이(가) 추가되었는지 확인하십시오. Swift 패키지 관리자를 참조하세요.

  2. Xcode 프로젝트 탐색기에서 Luma > Luma > AppDelegate(으)로 이동합니다.

  3. AEPPlaces이(가) 가져오기 목록의 일부인지 확인하십시오.

    code language-swift
    import AEPPlaces
    
  4. Places.self이(가) 등록 중인 확장 배열의 일부인지 확인하십시오.

    code language-swift
    let extensions = [
        AEPIdentity.Identity.self,
        Lifecycle.self,
        Signal.self,
        Edge.self,
        AEPEdgeIdentity.Identity.self,
        Consent.self,
        UserProfile.self,
        Places.self,
        Messaging.self,
        Optimize.self,
        Assurance.self
    ]
    
  5. Xcode 프로젝트 탐색기에서 Luma > Luma > Utils > MobileSDK(으)로 이동하여 func processRegionEvent(regionEvent: PlacesRegionEvent, forRegion region: CLRegion) async 함수를 찾습니다. 다음 코드를 추가합니다.

    code language-swift
    // Process geolocation event
    Places.processRegionEvent(regionEvent, forRegion: region)
    

    Places.processRegionEvent API는 지리적 위치 정보를 Places 서비스에 전달합니다.

  6. Xcode의 프로젝트 탐색기에서 Luma > Luma > Views > Location > GeofenceSheet(으)로 이동합니다.

    1. [입력] 단추에 다음 코드를 입력합니다
    code language-swift
    // Simulate geofence entry event
    Task {
        await MobileSDK.shared.processRegionEvent(regionEvent: .entry, forRegion: region)
    }
    
    1. Exit 단추에 다음 코드를 입력합니다
    code language-swift
    // Simulate geofence exit event
    Task {
        await MobileSDK.shared.processRegionEvent(regionEvent: .exit, forRegion: region)
    }
    

앱을 사용하여 유효성 검사

  1. 장치 또는 시뮬레이터에서 앱을 엽니다.

  2. 위치 탭으로 이동합니다.

  3. 맵을 이동하고(드래그) POI 중 하나(예: 런던) 위에 파란색 중간 원이 있는지 확인합니다.

  4. 누르기 {width="20"} 범주와 이름이 빨간색 위치에 있는 레이블에 표시될 때까지(pin 사용).

  5. POI의 레이블을 탭하여 주변 POI 시트를 엽니다.

    {width="300"}

  6. 시작 또는 종료 단추를 눌러 앱에서 지오펜스 시작 및 지오펜스 종료 이벤트를 시뮬레이션합니다.

    {width="300"}

  7. Assurance UI에 이벤트가 표시됩니다.

다음 단계

이제 앱에서 지리적 위치 기능에 더 많은 기능을 추가하려면 모든 도구가 있어야 합니다. 이벤트를 Edge Network으로 전달했으므로 Experience Platform에 대한 앱을 설정한 후에는 앱에 사용된 프로필에 대해 경험 이벤트가 표시되는 것을 볼 수 있습니다.

이 자습서의 Journey Optimizer 섹션에서 여정을 트리거하는 데 경험 이벤트를 사용할 수 있습니다(푸시 알림 및 Journey Optimizer을 사용한 인앱 메시지 참조). 예를 들어 앱 사용자가 실제 스토어의 geofence에 들어오면 일부 제품 프로모션과 함께 푸시 알림을 전송하는 일반적인 사례입니다.

주로 태그 속성에서 정의한 Places 서비스 및 데이터 요소와 규칙에 의해 앱에 대한 기능이 구현된 것을 보았습니다. 따라서 앱의 코드를 최소화합니다. 또는 채워진 Edge.sendEvent 개체가 포함된 XDM 페이로드와 함께API(자세한 내용은이벤트placeContext 참조)를 사용하여 앱에서 직접 동일한 기능을 구현할 수 있습니다.

SUCCESS
이제 Experience Platform Mobile SDK에서 위치 확장 기능을 사용하여 지리적 위치 서비스용 앱을 활성화했습니다.
Adobe Experience Platform Mobile SDK에 대해 학습하는 데 시간을 투자해 주셔서 감사합니다. 질문이 있거나 일반적인 피드백을 공유하고 싶거나 향후 콘텐츠에 대한 제안이 있는 경우 이 Experience League 커뮤니티 토론 게시물에서 공유하십시오.

다음: Adobe Analytics에 데이터 매핑

recommendation-more-help
9fed61f5-c338-47ad-8005-0b89a5f4af8b