Тип «Реклама» существует в обоих «UnityEngine.Advertisements.Editor» - PullRequest
0 голосов
/ 23 апреля 2020

Я создаю игру с рекламой в Unity 2019.2.21f1, используя Unity Ads. У меня есть следующий короткий скрипт для показа рекламы:

using System.Collections;
using UnityEngine;
using UnityEngine.Advertisements;

public class AdBannerScriptUnity : MonoBehaviour
{
    public string gameId = "myGameId";
    public string placementId = "AdBanner";
    public bool testMode = true;

    void Start()
    {
        Advertisement.Initialize(gameId, testMode);
        StartCoroutine(ShowBannerWhenReady());
    }

    IEnumerator ShowBannerWhenReady()
    {
        while (!Advertisement.IsReady(placementId))
        {
            yield return new WaitForSeconds(0.5f);
        }
        Advertisement.Banner.SetPosition(BannerPosition.BOTTOM_CENTER);
        Advertisement.Banner.Show(placementId);
    }
}

У меня включена реклама в Unity Services (кнопка с изображением облака в правом верхнем углу интерфейса Unity Editor) и я импортировал актив монетизации Unity из хранилища активов.

При создании этой игры я получаю следующую ошибку:

Assets/Scripts/AdBannerScriptUnity.cs(13,9): error CS0433: The type 'Advertisement' exists in both 'UnityEngine.Advertisements.Editor, Version=3.4.2.0, Culture=neutral, PublicKeyToken=null' and 'UnityEngine.Advertisements, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null'

Я где-то читал, что начиная с Unity 5.2, Монетизируемый актив Unity больше не нужен для показа рекламы с Unity, поэтому Я попытался удалить его, но затем я получаю

Assets/Scripts/AdBannerScriptUnity.cs(23,23): error CS0117: 'Advertisement' does not contain a definition for 'Banner'

Так ясно, что Актив необходим, но, кажется, у меня как-то, согласно первой ошибке, опубликованной выше, установлены две версии? Как мне убедиться, что у меня установлена ​​только одна версия?

...