Admob

Программирование для iPhone & Android

Admob

Сообщение Max010475 18 мар 2020, 20:21

Приветствую.Есть скрипт для просмотра Admob рекламы с вознаграждением.Первые несколько сцен все работает нормально, но потом реклама начинает показываться с середины и вознаграждения не происходит,а затем игра вылетает.Похоже утечка памяти.Уже давно бьюсь с этой ошибкой.Что не так ?

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
using GoogleMobileAds.Api;
using System;

public class MineButton : MonoBehaviour
{
private RewardedAd rewardedAd;
private int diamonds = 0;
AdText adText;

void Start()
{
adText = FindObjectOfType<AdText>();
CreateAndLoadRewardedAd();
}

public void ButtonClick()
{
if (this.rewardedAd.IsLoaded())
this.rewardedAd.Show();
}

private void Update()
{
if (diamonds > 0)
{
adText.GetComponent<Text>().text = diamonds.ToString();
diamonds = 0;
}
}

public void CreateAndLoadRewardedAd()
{
string adUnitId;// realAdUnitId;
#if UNITY_ANDROID
adUnitId = "ca-app-pub-3940256099942544/5224354917";
// realAdUnitId = "ca-app-pub-9578413026007667/2692435076";
#elif UNITY_IPHONE
adUnitId = "ca-app-pub-3940256099942544/1712485313";
#else
adUnitId = "unexpected_platform";
#endif
this.rewardedAd = new RewardedAd(adUnitId);

this.rewardedAd.OnUserEarnedReward += HandleUserEarnedReward;
this.rewardedAd.OnAdClosed += HandleRewardedAdClosed;

AdRequest request = new AdRequest.Builder().AddTestDevice("76F2A5E6577BA309EBF303616F70485A").Build();

this.rewardedAd.LoadAd(request);
}

public void HandleRewardedAdClosed(object sender, EventArgs args)
{
CreateAndLoadRewardedAd();
}

public void HandleUserEarnedReward(object sender, Reward args)
{
string type = args.Type;
double amount = args.Amount;
diamonds = (int)amount;
}
}
Max010475
UNец
 
Сообщения: 3
Зарегистрирован: 13 мар 2020, 16:38

Вернуться в iPhone & Android

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 4