Я разрабатываю Android-игру для Android в Unity.Я интегрировал Google Admob SDK в свой проект и сумел показать видеообъявление награды Google AdMob в моем Android APK, ссылаясь на https://developers.google.com/admob/unity/rewarded-video.
Однако, когда сцена перезагружается для перезапуска функций обратного вызова игры, вызываемых несколько раз.
Пример функции обратного вызова:
// Called when an ad request has successfully loaded.
rewardBasedVideo.OnAdLoaded += HandleRewardBasedVideoLoaded;
// Called when an ad request failed to load.
rewardBasedVideo.OnAdFailedToLoad += HandleRewardBasedVideoFailedToLoad;
// Called when an ad is shown.
rewardBasedVideo.OnAdOpening += HandleRewardBasedVideoOpened;
// Called when the ad starts to play.
rewardBasedVideo.OnAdStarted += HandleRewardBasedVideoStarted;
// Called when the user should be rewarded for watching a video.
rewardBasedVideo.OnAdRewarded += HandleRewardBasedVideoRewarded;
сцена загружается первый раз: функции обратного вызова вызываются 1 раз.
сцена загружается снова: функции обратного вызова вызывают 2 раза.
сцена загружается снова: функции обратного вызова вызываются 3 раза.
...
Я думаю, что основная причина заключается в том, что функции обратного вызова накапливаются даже при перезагрузке сцен Unity.
Как я могу сделать так, чтобы такие функции обратного вызова вызывались только 1 раз, даже меняя сцену?