# iOS Live Activity 스키마 구성

Live Activity 스키마는 iOS 앱이 선언하는 하나의 `ActivityAttributes` 타입의 content-state 필드를 설명합니다. 이를 통해 Journey의 [Live Activity 요소](/ko/product/customer-journey/journey-elements/channels/live-activity/)가 원시 JSON 대신 명명된 필드로 양식을 구성할 수 있습니다. Control Panel에서 위젯당 하나의 버전을 게시하세요.

<Aside type="note">
스키마에 무엇을 넣어야 하는지에 대해서는 [스키마 작성](/ko/developer/api-reference/live-activity-schemas-api/#writing-a-schema)을 참조하거나, Control Panel 대신 스크립트에서 게시하려면 [Live Activity 스키마 API](/ko/developer/api-reference/live-activity-schemas-api/)를 사용하세요.
</Aside>

## 스키마 버전 게시

1. Pushwoosh에서 애플리케이션의 **플랫폼 구성** 페이지를 엽니다.
2. iOS 플랫폼 옆에 있는 **Live Activity 스키마**를 클릭합니다.

![플랫폼 구성 페이지의 iOS 플랫폼에 대한 Live Activity 스키마 항목](/ios-configuration-ios-live-activity-schemas-configuration-1.webp)

3. **버전 게시**를 클릭합니다.
4. **속성 타입**을 입력합니다: 앱에 있는 `ActivityAttributes` 타입의 정확한 이름(예: `FlightAttributes`)을 입력합니다.
5. **Content-state JSON 스키마**에 해당 타입의 `ContentState`에 대한 JSON 스키마를 입력합니다. 이는 항공편의 게이트나 상태처럼 활동이 실행되는 동안 변경되는 필드입니다. 여기에 `ActivityAttributes` 자체의 고정 필드는 포함하지 마세요. [스키마 작성](/ko/developer/api-reference/live-activity-schemas-api/#writing-a-schema)을 참조하세요.

![속성 타입이 FlightAttributes로 설정되고 게이트, 상태, 예상 시간에 대한 content-state JSON 스키마가 있는 스키마 버전 게시 대화 상자](/ios-configuration-ios-live-activity-schemas-configuration-2.webp)

6. **게시**를 클릭합니다.

<Aside type="caution">
게시된 버전은 편집할 수 없습니다. 동일한 **속성 타입**으로 다시 게시하면 대신 새 버전이 생성됩니다. 이전 버전으로 이미 설정된 Journey 요소는 사용자가 전환할 때까지 계속 해당 버전을 사용합니다.
</Aside>

## 기존 스키마 관리

동일한 **Live Activity 스키마** 화면에서:

* 버전 옆에 있는 **JSON 보기**를 클릭하여 게시된 스키마를 확인합니다.
* **삭제**를 클릭하여 버전을 제거합니다. 이 작업은 되돌릴 수 없으며, 해당 버전으로 여전히 설정된 Journey 요소는 content-state 필드 렌더링을 중지합니다.

## Journey에서 스키마 사용

게시되면 Journey의 [Live Activity 요소](/ko/product/customer-journey/journey-elements/channels/live-activity/#set-up-the-element)에 있는 **위젯** 아래에서 선택합니다. 그러면 해당 content-state 필드가 **카드 콘텐츠** 아래에 나타납니다.