using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using GoogleMobileAds.Api;
using System;
public class GecisReklam {
public static GecisReklam sc;
private InterstitialAd ads;
private RewardBasedVideoAd rewardBasedVideo;
private string reklamID;
private string rewardedID;
private string appId;
public bool ReklamDurum = false;
public bool ReklamDurum2 = false;
void Awake ()
{
sc = this;
}
public void InitAds()
{
#if UNITY_ANDROID
reklamID = "ca-app-pub-XXXXXXXXXXXXXXXXXXX";
#elif UNITY_IPHONE
reklamID = "ca-app-pub-XXXXXXXXXXXXXXX";
#else
reklamID = "unexpected_platform";
#endif
if (ads != null) ads.Destroy();
ads = new InterstitialAd(reklamID);
AdRequest request = new AdRequest.Builder().Build();
ads.OnAdLoaded += Interstitial_OnAdLoaded;
ads.LoadAd(request);
}
public void InitRewarded()
{
#if UNITY_ANDROID
appId = "ca-app-pub-XXXXXXXXXXXXXXXXXXX";
rewardedID = "ca-app-pub-XXXXXXXXXXX/XXXXXXXXXXXXXXXX";
#elif UNITY_IPHONE
appId = "ca-app-pub-XXXXXXXXXXXXXXX";
#else
appId = "unexpected_platform";
#endif
MobileAds.Initialize(appId);
this.rewardBasedVideo = RewardBasedVideoAd.Instance;
rewardBasedVideo.OnAdLoaded += HandleRewardBasedVideoLoaded;
rewardBasedVideo.OnAdFailedToLoad += HandleRewardBasedVideoFailedToLoad;
rewardBasedVideo.OnAdOpening += HandleRewardBasedVideoOpened;
rewardBasedVideo.OnAdStarted += HandleRewardBasedVideoStarted;
rewardBasedVideo.OnAdRewarded += HandleRewardBasedVideoRewarded;
rewardBasedVideo.OnAdClosed += HandleRewardBasedVideoClosed;
rewardBasedVideo.OnAdLeavingApplication += HandleRewardBasedVideoLeftApplication;
AdRequest request = new AdRequest.Builder().Build();
rewardBasedVideo.LoadAd(request, rewardedID);
}
public void HandleRewardBasedVideoLoaded(object sender, EventArgs args)
{
print("HandleRewardBasedVideoLoaded event received");
}
public void HandleRewardBasedVideoFailedToLoad(object sender, AdFailedToLoadEventArgs args)
{
print("HandleRewardBasedVideoFailedToLoad event received with message: "+ args.Message);
}
public void HandleRewardBasedVideoOpened(object sender, EventArgs args)
{
print("HandleRewardBasedVideoOpened event received");
}
public void HandleRewardBasedVideoStarted(object sender, EventArgs args)
{
print("HandleRewardBasedVideoStarted event received");
}
public void HandleRewardBasedVideoClosed(object sender, EventArgs args)
{
print("HandleRewardBasedVideoClosed event received");
}
public void HandleRewardBasedVideoRewarded(object sender, Reward args)
{
string type = args.Type;
double amount = args.Amount;
print("HandleRewardBasedVideoRewarded event received for " + amount.ToString() + " " + type);
//PlayerPrefs.SetInt("playerChip", (int)amount);
}
public void HandleRewardBasedVideoLeftApplication(object sender, EventArgs args)
{
print("HandleRewardBasedVideoLeftApplication event received");
}
void Update()
{
if (ReklamDurum)
{
if (ads.IsLoaded())
{
ads.Show();
ReklamDurum = false;
}
}
if(ReklamDurum2)
{
if (rewardBasedVideo.IsLoaded())
{
rewardBasedVideo.Show();
ReklamDurum2 = false;
}
}
}
private void Interstitial_OnAdLoaded(object sender, System.EventArgs e)
{
Debug.Log("interstitial yüklendi... - ");
}
}
Bir gameobject oluşturup scripti ata.
Farklı classdan kullanmak için örnek :
GecisReklam.sc.InitAds();
GecisReklam.sc.ReklamDurum = true;