所以我在我的 Unity 项目中添加了一个基于奖励的广告,我想用 300 个硬币奖励观看广告的用户,但我每次都得到重复的奖励。我想我知道问题出在哪里,但我无法解决!
我有这个启动函数和一个在我的广告脚本上获得奖励的函数:
void Start()
{
this.rewardBasedVideoAd = RewardBasedVideoAd.Instance;
rewardBasedVideoAd.OnAdLoaded += HandleOnAdLoaded;
rewardBasedVideoAd.OnAdOpening += HandleOnAdOpening;
rewardBasedVideoAd.OnAdClosed += HandleOnAdClosed;
rewardBasedVideoAd.OnAdRewarded += HandleOnAdRewarded;
MobileAds.Initialize(initStatus => { });
this.LoadRewardBasedAd();
}
public void HandleOnAdRewarded(object sender, Reward args)
{
PlayerPrefs.SetInt("coins", PlayerPrefs.GetInt("coins") + 300);
}
当您在游戏中死去并想重新开始时,我会呼叫SceneManager.LoadScene(0);
这是我得到的唯一场景!我认为当我加载场景时,开始功能再次运行并添加另一个奖励rewardBasedVideoAd.OnAdRewarded += HandleOnAdRewarded;
。我曾尝试rewardBasedVideoAd.OnAdRewarded -= HandleOnAdRewarded;
在不同的时间多次拨打电话,但并没有解决问题。
如果我连续n次重新开始游戏,当我看广告时,我将获得n次奖励!有人能帮我吗?先感谢您!