Unity 고급 설정
사용자 세그먼트, 커스텀텀 파라미터, 단가 등 Unity 고급 설정을 설정 광고 게재와 수익화 최적화합니다.
읽는 시간 7분최근 업데이트: 9시간 전
세그먼트 정의
이제 특정 잠재 고객에게 맞게 광고를 게재하는 방법을 쉽게 커스터마이즈할 수 있습니다. 사용자 속한 세그먼트 따라 광고를 게재할 수 있도록 SDK에 사용자 세부 정보를 서버에 알려야 합니다.
레벨플레이 SDK는 다음 세 가지 메서드를 지원하여 사용자 세그먼트 설명하기 위해 서버로 데이터를 전달합니다.
- 기기 속성: 레벨플레이 SDK는 기기 모델, 기기 제조사, 앱 버전, OS와 같은 사용자의 기기에 관련된 특정 표준 파라미터를 자동으로 수집합니다. 이 데이터를 전달할 필요가 없습니다.
- 사용자 속성: SDK에서 수집하지 않는 사용자 데이터(예: 연령, 성별 또는 생성일)는 API를 통해 전달되어야 합니다. (다음 섹션 지원되는 세그먼트 프로퍼티의 전체 목록과 설명을 참조하십시오.) 이 지침에 따라 SDK가 레벨플레이 플랫폼에서 정의한 세그먼트에 관련 광고 설정을 적용할 수 있도록 이 세부 정보를 전송합니다.
- 커스텀 세그먼트: 사용자 세부 정보를 서버로 전달하지 않고 커스텀 세그먼트를 생성하고 해당 사용자 세그먼트에 맞춤형 광고 설정을 구성할 수 있습니다.
사용자 프로퍼티 전달
레벨플레이 플랫폼에서 세그먼트를 정의한 후 서버에 사용자 세부 정보를 알려야 합니다.
세그먼트를 지지대 어떤 프로퍼티를 서버에 보낼지 정의합니다. 다음 방법 중 하나를 통해 이 정보를 전송할 수 있습니다.
-
사용자 속한 세그먼트 알고 있다면 새 세그먼트 생성하고 이름을 설정합니다.var segment = new LevelPlaySegment();segment.SegmentName = "nameOfSegment";
-
그렇지 않으면 사용자 세부 정보를 보내 주십시오. 레벨플레이 API 세그먼트 사용자 속성 위해 설정할 수 있는 다양한 표준 사용자 프로퍼티를 제공합니다. 아래로 스크롤 지원되는 사용자 세그먼트 프로퍼티 테이블을 확인하십시오.var segment = new LevelPlaySegment();segment.Level = 5;segment.UserCreationDate = 1758100075134;segment.IapTotal = 100;segment.IsPaying = 1;또한 세그먼트 최대 5개의 커스텀 사용자 프로퍼티를 설정할 수도 있습니다.var key = "key1";var val = "value1";var segment = new LevelPlaySegment();segment.SetCustom(key, val);마지막으로 다음 함수 호출 새로 생성된 세그먼트 전달합니다.LevelPlay.SetSegment(segment);
지원되는 사용자 세그먼트 프로퍼티
세그먼트 속성 | Type | 제한 | 설명 |
|---|---|---|---|
| SegmentName | 문자열 | 영숫자 최대 32자 | 레벨플레이 계정에 있는 세그먼트 특정 이름입니다. |
| IsPaying | Int | 0 또는 1 | 사용자 인앱 구매에 비용을 지출한 경우 1 0 사용자 인앱 구매에 비용을 지출하지 않은 경우 |
| IapTotal | 더블 | 1-999999.99 | 사용자 인앱 구매에 지출한 총 금액입니다. |
| UserCreationDate | 길이 | 0보다 작을 수 없음 | 사용자 앱을 설치한 날짜(예: DateTimeOffset.UtcNow.ToUnixTimeMilliseconds()) |
| 커스텀 파라미터 | key=string, value=string | 레벨플레이 최대 5개의 커스텀 파라미터 영숫자(최대 32자)를 지원합니다. | 서버에 디스패치 추가 데이터 |
보상형 광고 서버 간 콜백에 대한 커스텀 파라미터
레벨플레이 보상형 광고 유닛은 서버 측 이벤트를 지원하여 성공적인 광고 완료 이벤트 후 사용자에게 제공해야 하는 보상을 알려줍니다. 자세히 알아보기 여기.
서버 파라미터 외에도 클라이언트 통해 런타임 커스텀 파라미터를 공유할 수 있습니다. 이를 구현하려면 setMetadata API를 사용하여 레벨플레이에 커스텀 파라미터를 전달합니다. 커스텀 파라미터는 이전 값을 오버라이드하는 세션 동안 여러 번 업데이트할 수 있습니다.
커스텀 파라미터를 재설정하려면 LevelPlay_Rewarded_Server_Params를 빈 배열로 설정합니다.
예제 구현 코드
LevelPlay.SetMetaData("LevelPlay_Rewarded_Server_Params", new [] { "key1=value1", "key2=value2" });
그러면 아래 예시와 같이 해당 콜백 수신됩니다.
http://www.mydomain.com/rewardsCallback?appUserId=[사용자_ID]&rewards=[리워드]&eventId=[이벤트_ID]&itemName=[ITEM_NAME]& 커스텀_key1=value1& 커스텀_key2=value2
게임 일시 정지
API SetPauseGame은 레벨플레이 SDK 버전 8.5.0의 일부로 레벨플레이 클래스 도입되었으며 iOS 앱 해당합니다.
PauseGame 상태를 "true"로 설정하면 광고 콜백을 제외하고 모든 Unity 3D 게임 활동이 일시 중지됩니다. 광고가 종료되면 게임 활동이 자동으로 재개됩니다.
세션에서 SetPauseGame API 한 번 호출 하며, 레벨플레이 SDK를 초기화하기 전 또는 이후, 세션의 모든 광고(여러 AdUnit API를 위한 보상형 비디오 광고 및 인터스티셜 광고 영향을 미치기 때문입니다.
LevelPlay.SetPauseGame(true);
SetPauseGame을 false 값으로 호출하여 이 세션의 기능을 비활성화할 수 있습니다.
LevelPlay.SetPauseGame(false);
레거시 레벨플레이 SDK의 경우(7.2.4~8.4.0) 다음 API 사용하십시오.
// Pause all game activities except ad callbacks. The game activity will be resumed automatically when the ad is closedLevelPlay.SetPauseGame(true);// Deactivate the functionality in this sessionLevelPlay.SetPauseGame(false);
가격 플로어 설정
Floor 설정 API 사용하면 특정 광고 유닛의 단가를 설정할 수 있습니다. 사용자 가격 한도를 설정하면 타게팅 효율성을 높이고 지연 줄이고 광고 성과를 최적화할 수 있습니다.
광고 오브젝트 생성할 때 단가를 할당해야 하며, 해당 오브젝트 모든 후속 로드에 적용됩니다.
프로퍼티 | Type | 설명 |
|---|---|---|
| 단가 | 더블 | 기존 인스턴스와 입찰자에 적용되는 최소 eCPM을 정의하는 USD 기준 가격입니다. |
인터스티셜 광고 예시
// Define a price floor configurationvar adConfig = new LevelPlayInterstitialAd.Config.Builder() .SetBidFloor(1.23) // USD로 가격 한도 설정 .Build()// Apply the configuration to an interstitial ad unitvar interstitialAd = new LevelPlayInterstitialAd("adUnitId", adConfig);
전체 인터스티셜 광고 구현은 여기에서 사용할 수 있습니다.
보상형 광고 예시
// Define a price floor configurationvar adConfig = new LevelPlayRewardedAd.Config.Builder() .SetBidFloor(1.23) // USD로 가격 한도 설정 .Build()// Apply the configuration to a rewarded ad unitvar rewardedAd = new LevelPlayRewardedAd("adUnitId", adConfig);
전체 보상형 광고 구현은 여기에서 사용할 수 있습니다.
배너 광고 예시
// Define a price floor configurationvar adConfig = new LevelPlayBannerAd.Config.Builder() .SetBidFloor(1.23) // USD로 가격 한도 설정 .Build();// Apply the configuration to a banner ad unitvar bannerAd = new LevelPlayBannerAd("adUnitId", adConfig);
전체 배너 광고 구현은 여기에서 사용할 수 있습니다.
레벨플레이 SDK 오류 코드
레벨플레이 SDK 연동의 실패에 대한 설명을 제공하는 오류 피드백 메커니즘을 제공합니다. 무언가 잘못되었거나 연동의 한 부분이 올바르게 완료되지 않은 경우 이러한 오류가 표시됩니다.
레벨플레이 오류 오브젝트에는 오류 코드와 메시지가 포함되어 있습니다. 다음은 가능한 모든 오류와 함수에 따라 해당 메시지.
오류 코드 | Ad Unit | 설명 |
|---|---|---|
| 508 | N/A |
|
| 509 | 인터스티셜 광고, 보상형 동영상 | Show Fail: 표시할 광고가 없습니다 |
| 510 | 인터스티셜 광고, 보상형 비디오, 배너 | 로드 실패: 서버 응답 실패 |
| 520 | 인터스티셜 광고, 보상형 동영상 | Show Fail: 인터넷 연결 없음. ShouldTrackNetworkState가 활성화되어 있고, 사용 가능한
Show Fail: 인터넷 연결 없음 |
| 524 | 인터스티셜 광고, 보상형 동영상 | Show Fail: %@ 플레이스먼트가 속도별로 정의된 한도에 도달했습니다.
Show Fail: 플레이스먼트 %@가 한도에 도달했습니다. |
| 526 | 인터스티셜 광고, 보상형 동영상 | Show Fail: 광고 유닛이 세션당 일일 한도에 도달했습니다 |
| 604 | Banner | 플레이스먼트가 제한되어 있기 때문에 로드할 수 없습니다 |
| 605 | 배너 | 배너를 로드하는 동안의 예기치 않은 예외 |
| 606 | Banner | 첫 번째 로드 시 모든 네트워크에 배너 채우지 않음 |
| 1007 | 인터스티셜 광고, 보상형 동영상 | 경매 실패: 경매 요청에 필요한 모든 정보가 포함되지 않았습니다 |
| 1022 | 보상형 비디오 | Show Fail: 다른 RV가 표시되는 동안 RV를 표시할 수 없습니다 |
| 1023 | 보상형 비디오 | Show Fail: 표시할 수 있는 광고가 없을 때 호출되는 RV 표시 |
| 1035 | 인터스티셜 광고 | 빈 폭포 |
| 1036 | 인터스티셜 광고 | Show Fail: 다른 인터스티셜 광고가 표시되는 동안 인터스티셜 광고를 표시할 수 없습니다 |
| 1037 | 인터스티셜 광고 | 로드 실패: 다른 인터스티셜 광고가 표시되는 동안 인터스티셜 광고를 로드할 수 없습니다 |
| 1039 | 인터스티셜 광고 | 호출하는 동안 인터스티셜 광고 |