GSM AdsInhouse

Mục đích để quảng cáo chéo giữa các game của công ty đang phát triển

I. Cách tích hợp mới

  • Ví dụ demo ở Scene: Plugins> GSM-SDK > Sample > SampleAdsScene

1.1 Tạo Game Object AdsController

1.1.1 Kéo Prefab GSMAdInhouse vào trong Game Object AdsController

1.1.2 Tạo class AdsController

Code mẫu:

using System;

public class AdsController : GSMAdManager
{
    private static AdsController instance;
    public static AdsController Instance { get { return instance; } }
    protected override void Start()
    {
        base.Start();
        if (instance == null)
        {
            instance = this;
            DontDestroyOnLoad(gameObject);
        }
        else
            Destroy(gameObject);
    }
    public override bool CanShowAds(string adsName)
    {
        // Tùy biến cho phép show Ads theo setting
        return base.CanShowAds(adsName);
    }
    public override bool IsInterstitialReady()
    {
        return base.IsInterstitialReady();
    }
    public override bool IsRewardVideoAdsReady()
    {
        return base.IsRewardVideoAdsReady();
    }
    public override void ShowInterstitial(Action OnShowCompleted = null, Action onAdClosed = null)
    {
        base.ShowInterstitial(OnShowCompleted, onAdClosed);
    }
    public override void ShowVideoAds(Action onUserEarnedReward = null, Action onAdClosed = null)
    {
        base.ShowVideoAds(onUserEarnedReward, onAdClosed);
    }
   
}

1.1.3 Add Script AdsController vào GameObject AdsController

  • Thuộc tính: AdInhouseController thì sử dụng GSMAdInhouse ở mục 1.1.1

1.1.4 Thêm các network quảng cáo khác nếu có

Ví dụ: Sử dụng Ironsource

  • Tạo GameObject IronSourceAdsController là con của AdsController

  • Tạo class IronSourceAdsController

    • Cần implement Interface IAdsInterface

    • Nếu đã có IAdsInterface khác trong project thì xóa bỏ, chỉ sử dụng trong GSM-SDK>Ads

    • Implement các method của IAdsInterface

  • Sau đó Add Script IronSourceAdsControllercho GameObject IronSourceAdsController

Code mẫu:

using GSM.Ads;
using System;
using UnityEngine;

public class SampleIronSourceAdsController : MonoBehaviour, IAdsInterface
{
    public bool IsInterstitialAdsReady()
    {
        //Implement IsInterstitialAdsReady Code
        return false;
    }

    public bool IsVideoRewardAdsReady()
    {
        //Implement IsVideoRewardAdsReady Code
        return false;
    }

    public void LoadInterstitial()
    {
        //Implement LoadInterstitial Code
    }

    public void LoadRewardedVideo()
    {
        //Implement LoadRewardedVideo Code
    }

    public void ShowInterstitial(Action onAdClosed)
    {
        //Implement ShowInterstitial Code
    }

    public void ShowVideoAds(Action onUserEarnedReward, Action onAdClosed)
    {
        //Implement ShowVideoAds Code
    }
}

II. Cách sửa AdsController đã có

1. Sửa class AdsController kế thừa từ class GSMAdManager

Code mẫu:

2. Sửa method Start

  • Xóa bỏ private List adsController;

  • Sửa private void Start() thành protected override void Start()

  • Thêm base.Start();

Code Mẫu: Bên trái là code cũ, bên phải là code mới

3. Overide method CanShowAds

Code mẫu: Bên trái là code cũ, bên phải là code mới

4. Overide method IsRewardVideoAdsReady

Code mẫu: Bên trái là code cũ, bên phải là code mới

5. Sửa method ShowVideoReward

Code mẫu: Bên trái là code cũ, bên phải là code mới

6. Overide method IsInterstitialReady

Code mẫu: Bên trái là code cũ, bên phải là code mới

7. Sửa method ShowInterstitial

Code mẫu: Bên trái là code cũ, bên phải là code mới

III. Notes

Chú ý:

  • Nếu trong code đã có sẵn interface IAdsInterface thì xóa bỏ, chỉ dùng IAdsInterface trong GSM-SDK

Last updated