Загрузка...

Error in Unity

Thread in C# created by EgorEc Apr 3, 2023. (bumped Apr 3, 2023) 236 views

  1. EgorEc
    EgorEc Topic starter Apr 3, 2023 Как дела? 25 Jan 1, 2022
    Вот такая ошибка не совсем понимаю что делать могу прислать код.
    [IMG]
     
  2. ChatGPT
    ChatGPT Apr 3, 2023 2250 Mar 14, 2023
    EgorEc, привет! Конечно, присылай свой код, чтобы мы могли понять, что вызывает эту ошибку. Также, попробуй перезапустить Unity и проверить, не возникает ли эта ошибка снова.
     
    1. View previous comments (9)
    2. EgorEc Topic starter
    3. ChatGPT
      EgorEc, спасибо за скрипт. Я посмотрел его и заметил, что у тебя есть несколько ошибок в коде.

      1. В начале скрипта ты объявляешь переменную `adUnitId`, но не присваиваешь ей значение. Тебе нужно добавить свой идентификатор рекламного блока AdMob в эту переменную.

      2. В методе `RequestBanner()` ты используешь `AdSize.BannerWidth` и `AdSize.BannerHeight`, но эти переменные не объявлены в твоем коде. Вместо этого, ты должен использовать `AdSize.Banner`.

      3. В методе `HandleOnAdLoaded()` ты пытаешься показать баннер, но не объявляешь переменную `bannerView`. Тебе нужно объявить эту переменную в начале скрипта и присвоить ей значение в методе `RequestBanner()`.

      4. В методе `HandleOnAdFailedToLoad()` ты пытаешься показать баннер, но не проверяешь, был ли он загружен. Тебе нужно добавить проверку на `bannerView != null`, чтобы убедиться, что баннер был успешно загружен перед его показом.

      Вот исправленный код:

      Code

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

      public class AdManager : MonoBehaviour
      {
      private BannerView bannerView;
      private string adUnitId = "ваш_идентификатор_рекламного_блока";

      void Start()
      {
      MobileAds.Initialize(initStatus => { });
      RequestBanner();
      }

      private void RequestBanner()
      {
      bannerView = new BannerView(adUnitId, AdSize.Banner, AdPosition.Bottom);

      AdRequest request = new AdRequest.Builder().Build();

      bannerView.LoadAd(request);

      bannerView.OnAdLoaded += HandleOnAdLoaded;
      bannerView.OnAdFailedToLoad += HandleOnAdFailedToLoad;
      }

      public void HandleOnAdLoaded(object sender, EventArgs args)
      {
      if (bannerView != null)
      {
      bannerView.Show();
      }
      }

      public void HandleOnAdFailedToLoad(object sender, AdFailedToLoadEventArgs args)
      {
      Debug.Log("Failed to load banner ad: " + args.Message);
      }
      }
      Надеюсь, это поможет тебе исправить ошибки и успешно подключить рекламу AdMob!
  3. Kilkaman
    Kilkaman Apr 3, 2023 хочу питсу :catzaza: 524 May 25, 2019
    Ответ един
    [IMG]
     
    1. EgorEc Topic starter
      Kilkaman, чел на языке фактов заговорил
  4. Mycop
    Mycop Apr 3, 2023 Изменить статус 84 Mar 18, 2019
    ошибку переводил уже?
     
    1. EgorEc Topic starter
    2. vtlstolyarov
      EgorEc, нельзя называть поля/свойства класса там же именем что и сам класс (на случай если переводчик написал тебе что-то что ты не понял)
Loading...
Top