logo
0
0
WeChat Login
docs(readme): 展示标准调用与 GameApp 快捷调用两种用法

GameFrameX Logo

Game Frame X Advertisement (CSJ / 穿山甲)

Version License Documentation

인디 게임 개발자를 위한 올인원 솔루션 · 인디 개발자의 꿈을 실현

📖 문서🚀 빠른 시작💬 QQ 그룹


🌐 언어: English | 简体中文 | 繁體中文 | 日本語 | 한국어


프로젝트 개요

Game Frame X 광고 시스템의穿山甲(CSJ/Pangle)플랫폼 어댑터. ByteDance의穿山甲광고 SDK를 사용하여 iOS/Android 앱을 위한 리워드 동영상 광고 통합을 제공합니다.

기능

  • 穿山甲(CSJ/Pangle)SDK 기반 리워드 동영상 광고 지원
  • 네이티브 iOS/Android 플랫폼 지원
  • IL2CPP 코드 스트리핑 보호
  • 조건부 컴파일 (UNITY_IOS, UNITY_ANDROID)
  • Game Frame X 광고 컴포넌트와 원활한 통합

아키텍처

이 패키지는 Game Frame X 광고 코어의 BaseAdvertisementManager 어댑터 구현입니다. Unity Inspector에서 AdvertisementComponent를 설정하면 자동으로 검색 및 로드됩니다.

클래스설명
CSJAdvertisementManager리워드 동영상 광고 관리자 — 로드, 표시 및 수명 주기 관리
CSJAdvertisementConfigappId 및 adUnitId 필드가 포함된 광고 설정
CSJBridgeiOS/Android 네이티브 플랫폼 호출 브릿지
CSJNativeMessageHandler네이티브 메시지 콜백 핸들러
GameFrameXAdvertisementCSJCroppingHelperIL2CPP link.xml 대체 — 타입 참조 유지

빠른 시작

설치

  1. 광고 코어 패키지 설치
  2. 이 어댑터를 Unity Package Manager (UPM)로 추가:
{
  "dependencies": {
    "com.gameframex.unity.advertisement": "https://github.com/GameFrameX/com.gameframex.unity.advertisement.git",
    "com.gameframex.unity.advertisement.csj": "https://github.com/gameframex/com.gameframex.unity.advertisement.csj.git"
  }
}

또는 Unity Package Manager 창에서 git URL로 추가.

사용 예시

Unity Inspector에서 설정: GameObject에 AdvertisementComponent를 추가한 후, 구현 유형 드롭다운에서 CSJAdvertisementManager를 선택합니다.

using GameFrameX.Advertisement.Runtime;

// 표준: GameEntry를 통해 (com.gameframex.unity.entry 비의존)
var adComponent = GameEntry.GetComponent<AdvertisementComponent>();

// 서버 측 검증 데이터 설정 (선택 사항)
adComponent.SetExtraData("userId", player.UserId);

// 리워드 동영상 광고 재생
var option = new AdvertisementPlayOption
{
    OnSuccess    = (data) => Debug.Log("광고 표시 성공"),
    OnFail       = (err) => Debug.LogError($"광고 표시 실패: {err}"),
    OnShowResult = (watched) =>
    {
        if (watched)
        {
            // 사용자에게 보상 지급
        }
    },
};
adComponent.Play(option);

// 단축: GameApp을 통해 (com.gameframex.unity.entry 필요)
GameApp.Advertisement.SetExtraData("userId", player.UserId);
var option2 = new AdvertisementPlayOption
{
    OnSuccess    = (data) => Debug.Log("광고 표시 성공"),
    OnFail       = (err) => Debug.LogError($"광고 표시 실패: {err}"),
    OnShowResult = (watched) =>
    {
        if (watched)
        {
            // 사용자에게 보상 지급
        }
    },
};
GameApp.Advertisement.Play(option2);

플랫폼 지원

플랫폼지원
iOS
Android
WebGL아니요
Standalone아니요

UNITY_IOS 또는 UNITY_ANDROID 스크립트 정의 기호가 필요합니다.

문서 및 자료

커뮤니티 및 지원

변경 로그

v1.0.0

  • 초기 릴리스
  • 穿山甲(CSJ/Pangle)플랫폼 리워드 동영상 광고 지원
  • IL2CPP 스트리핑 보호

라이선스

이 프로젝트는 MIT 라이선스Apache 라이선스 2.0 듀얼 라이선스입니다.