# GDPR 동의 설정

> 앱에서 GDPR 요구 설정 커스텀 권장 성공 사례를 따르십시오.커스텀

Unity Ads SDK의 모든 버전은 2018년 5월 25일부로 EEA(유럽경제지역)에서 발효된 GDPR(일반 데이터 보호 규정)을 준수합니다.

[개인정보 보호에 대한 유니티의 접근 방식](https://unity.com/legal)에 대한 자세한 내용은 법적 고지 사항 페이지를 참고하십시오.

## 커스텀 동의 솔루션 구현##implement-a-custom-consent-solution

앱에서 커스텀 동의 솔루션을 구현하는 경우 사용자의 동의 상태를 Unity Ads SDK로 전송해야 합니다.

다음 섹션에서는 TCF를 사용하지 않는 사용자와, CMP를 연동한 TCF 사용자의 커스텀 동의 구현을 처리하는 가이드라인에 대해 설명합니다.

### 개발자 동의 API를 사용한 커스텀 동의 구현##custom-consent-implementation-using-developer-consent-api

퍼블리셔 또는 미디에이션 시스템이 [개발자 동의 API](#custom-consent-implementation-using-developer-consent-api)를 통해 값을 전송하면 Unity의 옵트인 메시지가 표시되지 않습니다. 광고가 표시되는 동안 사용자는 언제든지 Unity 데이터 개인정보 보호 아이콘을 선택하여 타깃 광고 철회 또는 데이터 삭제를 요하고 데이터에 액세스할 수 있습니다.

권장되는 베스트 프랙티스는 `MetaData` 동의 플래그에 부울 값을 사용하는 것이지만, Unity Ads SDK는 1을 으로`true`, 0을 으로 해석하는 정수 값(1 또는 0)도 허용합니다`false`. 이렇게 하면 이러한 정수 값을 사용할 수 있는 커스터마이즈 또는 레거시 SDK 구현과 호환됩니다. Unity Ads SDK는 정수 값을 지원하지만 다음 코드 예제와 같이 퍼블리셔는 부울 값을 사용하여 동의 플래그를 전달하는 것이 좋습니다.

다음 API를 사용하여 동의 플래그를 Unity Ads SDK로 전달할 수 있습니다.

> **Tip:**
>
> 사용자가 프롬프트를 닫는 것처럼 타깃 광고에 동의하지도 거부하지도 않는 경우, 추후 다시 프롬프트를 표시하는 것이 좋습니다.

1. **Unity (C#)**

   ```cs
   // If the user opts out of personalized ads:
   MetaData userMetaData = new MetaData("user");
   userMetaData.Set("nonbehavioral", true);
   Advertisement.SetMetaData(userMetaData);

   // If the user opts in to personalized ads:
   MetaData userMetaData = new MetaData("user");
   userMetaData.Set("nonbehavioral", false);
   Advertisement.SetMetaData(userMetaData);
   ```

   > **Note:**
   >
   > 각 값의 `MetaData` 오브젝트 관련 변경 사항을 커밋한 후 다른 값을 설정해야 합니다.

2. **iOS (Objective-C)**

   ```objective-c
   // If the user opts in to targeted advertising:
   UADSMetaData *gdprConsentMetaData = [[UADSMetaData alloc] init];
   [gdprConsentMetaData set:@"gdpr.consent" value:@YES];
   [gdprConsentMetaData commit];

   // If the user opts out of targeted advertising:
   UADSMetaData *gdprConsentMetaData = [[UADSMetaData alloc] init];
   [gdprConsentMetaData set:@"gdpr.consent" value:@NO];
   [gdprConsentMetaData commit];
   ```

   > **Note:**
   >
   > 각 값의 `MetaData` 오브젝트 관련 변경 사항을 커밋한 후 다른 값을 설정해야 합니다.

3. **Android (Java)**

   ```java
   // If the user opts in to targeted advertising:
   MetaData gdprMetaData = new MetaData(this);
   gdprMetaData.set("gdpr.consent", true);
   gdprMetaData.commit();

   // If the user opts out of targeted advertising:
   MetaData gdprMetaData = new MetaData(this);
   gdprMetaData.set("gdpr.consent", false);
   gdprMetaData.commit();
   ```

   > **Note:**
   >
   > 각 값의 `MetaData` 오브젝트 관련 변경 사항을 커밋한 후 다른 값을 설정해야 합니다.
