본문 바로가기

유니티

Unity Ads API를 사용하여 광고를 보고 닫으면 특정 포인트를 추가하는 코드

728x90
반응형

using UnityEngine;

using UnityEngine.Advertisements;



public class AdsManager : MonoBehaviour, IUnityAdsListener

{

    private string gameId = "your_game_id";

    private bool testMode = true;

    private string rewardedVideoPlacementId = "rewardedVideo";

    private int rewardPoints = 10; // 보상 포인트



    private void Start()

    {

        Advertisement.AddListener(this);

        Advertisement.Initialize(gameId, testMode);

    }



    public void ShowRewardedVideo()

    {

        Advertisement.Show(rewardedVideoPlacementId);

    }



    public void OnUnityAdsDidFinish(string placementId, ShowResult showResult)

    {

        if (showResult == ShowResult.Finished && placementId == rewardedVideoPlacementId)

        {

            AddRewardPoints();

        }

    }



    private void AddRewardPoints()

    {

        // 보상 포인트 추가 로직 구현

        // 이 예제에서는 간단히 Debug.Log로 보상 포인트를 출력합니다.

        Debug.Log("보상 포인트 " + rewardPoints + " 추가됨!");

    }



    // 아래 이벤트는 사용하지 않지만 IUnityAdsListener 인터페이스에서 필수로 구현해야 합니다.

    public void OnUnityAdsReady(string placementId) { }

    public void OnUnityAdsDidError(string message) { }

    public void OnUnityAdsDidStart(string placementId) { }

}





위 코드에서는 AdsManager 클래스 내에서 Unity Ads API의 IUnityAdsListener 인터페이스를 구현하고, ShowRewardedVideo() 함수를 호출하여 보상형 동영상 광고를 실행합니다. OnUnityAdsDidFinish() 이벤트 함수에서는 광고 시청 완료 후 ShowResult.Finished 결과와 보상형 광고의 placementId가 rewardedVideoPlacementId와 일치하는 경우 보상 포인트를 추가하는 AddRewardPoints() 함수를 호출합니다.



이 코드를 사용하려면 gameId와 rewardedVideoPlacementId를 사용자의 Unity Ads 계정과 광고 캠페인에 맞게 설정하고, AddRewardPoints() 함수 내에서 실제로 보상 포인트를 추가하는 로직을 구현해야 합니다.

728x90
반응형