Проблема Unity 2020.3.15f2 после обновления Unity Ads — сети видеорекламы для iOS и Android 4.0.1 ⇐ IOS
Проблема Unity 2020.3.15f2 после обновления Unity Ads — сети видеорекламы для iOS и Android 4.0.1
Вот в чем проблема в моем проекте:
с использованием UnityEngine; использование System.Collections; использование UnityEngine.Advertisements; public enum WatchAdResult {Завершено, Не удалось, Пропущено} общедоступный класс UnityAds: MonoBehaviour { //делегат () публичный делегат void RewardedAdResult (результат WatchAdResult); //событие общедоступное статическое событие RewardedAdResult AdResult; общедоступный статический экземпляр UnityAds; [Заголовок("НАСТРОЙКА UNITY AD")] общедоступная строка UNITY_ANDROID_ID = "1486550"; общедоступная строка UNITY_IOS_ID = «1486551»; public bool isTestMode = true; частная пустота Пробуждение() { если (UnityAds.Instance != ноль) { Уничтожить (игровой объект); возвращаться; } еще { Экземпляр = это; DontDestroyOnLoad(gameObject); } } недействительный старт() { строка gameId = ""; #if UNITY_IOS gameId = UNITY_IOS_ID; #elif UNITY_ANDROID gameId = UNITY_ANDROID_ID; #endif если (Advertisement.isSupported) { Реклама.Initialize(gameId, isTestMode); } } #region НОРМАЛЬНОЕ ОБЪЯВЛЕНИЕ общественная недействительность ShowNormalAd() { если (Реклама.IsReady()) { Реклама.Показать(); } } общедоступный логический ForceShowNormalAd() { если (Реклама.IsReady()) { Реклама.Показать(); вернуть истину; } еще вернуть ложь; } #конечныйрегион #region РЕКЛАМА НАГРАДЫ public bool isRewardedAdReady() { return Advertisement.IsReady("rewardedVideo"); } публичная недействительность ShowRewardVideo() { ПоказатьRewardedAd(); } частная пустота ShowRewardedAd() { если (!allowWatch) возвращаться; if (Advertisement.IsReady("rewardedVideo")) { вар параметры = новый ShowOptions {resultCallback = HandleShowResult}; если (!Advertisement.isShowing) Advertisement.Show("rewardedVideo", options); разрешитьWatch = ложь; } } boolallowWatch = правда; частная пустота HandleShowResult (результат ShowResult) { переключатель (результат) { случай ShowResult.Завершено: Debug.Log("Объявление успешно показано."); AdResult(WatchAdResult.Finished); ; перерыв; случай ShowResult.Пропущено: Debug.Log("Объявление было пропущено, не дойдя до конца."); AdResult(WatchAdResult.Skipped); перерыв; случай ShowResult.Failed: Debug.LogError("Не удалось показать объявление."); AdResult(WatchAdResult.Failed); перерыв; } разрешитьWatch = правда; } #конечныйрегион } Ошибки, возникшие после обновления:
[*]UnityAds.cs(54,27): ошибка CS0117: «Реклама» не содержит определения для «IsReady». [*]UnityAds.cs(56,27): ошибка CS1501: нет перегрузки для метода Show, принимает 0 аргументов. [*]UnityAds.cs(62,27): ошибка CS0117: «Реклама» не содержит определения для «IsReady». [*]UnityAds.cs(64,27): ошибка CS1501: нет перегрузки для метода Show, принимает 0 аргументов. [*]UnityAds.cs(76,30): ошибка CS0117: «Реклама» не содержит определения для «IsReady». [*]UnityAds.cs(89,27): ошибка CS0117: «Реклама» не содержит определения для «IsReady». [*]UnityAds.cs(91,49): ошибка CS0117: «ShowOptions» не содержит определения для «resultCallback».
Мне бы хотелось обновить SDK до последней версии для «Advertisement Legacy» (4.4.2) в Unity, но не уверен, что это вызовет больше проблем, чем того стоило бы
Все работало нормально, пока я не обновился с 3.7.5 до 4.0.1, потому что магазин Google Play удалил мое приложение, и с тех пор я пытаюсь разобраться.
Вот в чем проблема в моем проекте:
с использованием UnityEngine; использование System.Collections; использование UnityEngine.Advertisements; public enum WatchAdResult {Завершено, Не удалось, Пропущено} общедоступный класс UnityAds: MonoBehaviour { //делегат () публичный делегат void RewardedAdResult (результат WatchAdResult); //событие общедоступное статическое событие RewardedAdResult AdResult; общедоступный статический экземпляр UnityAds; [Заголовок("НАСТРОЙКА UNITY AD")] общедоступная строка UNITY_ANDROID_ID = "1486550"; общедоступная строка UNITY_IOS_ID = «1486551»; public bool isTestMode = true; частная пустота Пробуждение() { если (UnityAds.Instance != ноль) { Уничтожить (игровой объект); возвращаться; } еще { Экземпляр = это; DontDestroyOnLoad(gameObject); } } недействительный старт() { строка gameId = ""; #if UNITY_IOS gameId = UNITY_IOS_ID; #elif UNITY_ANDROID gameId = UNITY_ANDROID_ID; #endif если (Advertisement.isSupported) { Реклама.Initialize(gameId, isTestMode); } } #region НОРМАЛЬНОЕ ОБЪЯВЛЕНИЕ общественная недействительность ShowNormalAd() { если (Реклама.IsReady()) { Реклама.Показать(); } } общедоступный логический ForceShowNormalAd() { если (Реклама.IsReady()) { Реклама.Показать(); вернуть истину; } еще вернуть ложь; } #конечныйрегион #region РЕКЛАМА НАГРАДЫ public bool isRewardedAdReady() { return Advertisement.IsReady("rewardedVideo"); } публичная недействительность ShowRewardVideo() { ПоказатьRewardedAd(); } частная пустота ShowRewardedAd() { если (!allowWatch) возвращаться; if (Advertisement.IsReady("rewardedVideo")) { вар параметры = новый ShowOptions {resultCallback = HandleShowResult}; если (!Advertisement.isShowing) Advertisement.Show("rewardedVideo", options); разрешитьWatch = ложь; } } boolallowWatch = правда; частная пустота HandleShowResult (результат ShowResult) { переключатель (результат) { случай ShowResult.Завершено: Debug.Log("Объявление успешно показано."); AdResult(WatchAdResult.Finished); ; перерыв; случай ShowResult.Пропущено: Debug.Log("Объявление было пропущено, не дойдя до конца."); AdResult(WatchAdResult.Skipped); перерыв; случай ShowResult.Failed: Debug.LogError("Не удалось показать объявление."); AdResult(WatchAdResult.Failed); перерыв; } разрешитьWatch = правда; } #конечныйрегион } Ошибки, возникшие после обновления:
[*]UnityAds.cs(54,27): ошибка CS0117: «Реклама» не содержит определения для «IsReady». [*]UnityAds.cs(56,27): ошибка CS1501: нет перегрузки для метода Show, принимает 0 аргументов. [*]UnityAds.cs(62,27): ошибка CS0117: «Реклама» не содержит определения для «IsReady». [*]UnityAds.cs(64,27): ошибка CS1501: нет перегрузки для метода Show, принимает 0 аргументов. [*]UnityAds.cs(76,30): ошибка CS0117: «Реклама» не содержит определения для «IsReady». [*]UnityAds.cs(89,27): ошибка CS0117: «Реклама» не содержит определения для «IsReady». [*]UnityAds.cs(91,49): ошибка CS0117: «ShowOptions» не содержит определения для «resultCallback».
Мне бы хотелось обновить SDK до последней версии для «Advertisement Legacy» (4.4.2) в Unity, но не уверен, что это вызовет больше проблем, чем того стоило бы
Все работало нормально, пока я не обновился с 3.7.5 до 4.0.1, потому что магазин Google Play удалил мое приложение, и с тех пор я пытаюсь разобраться.
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение