Поделиться через


Обработка ошибок рекламы

Предупреждение

По состоянию на 1 июня 2020 г. платформа Монетизации Microsoft Ad для приложений Windows UWP будет закрыта. Подробнее

Классы AdControl, InterstitialAd и NativeAdsManagerV2 имеют событие ErrorOccurred, возникающее при возникновении ошибки, связанной с рекламой. Код приложения может обрабатывать это событие и проверять свойства ErrorCode и ErrorMessage объекта args, чтобы помочь определить причину ошибки.

Приложения XAML

Чтобы обрабатывать ошибки, связанные с рекламой в приложении XAML, выполните следующие действия.

  1. Назначьте событие ErrorOccurred объекта AdControl, InterstitialAd или NativeAdsManagerV2 имени делегата обработчика событий.

  2. Код делегата обработки событий ошибки, чтобы он принимает два параметра: объект отправителя и объект AdErrorEventArgs.

Ниже приведен пример, который назначает делегату с именем OnAdError событию ErrorOccurred объекта AdControl с именем myBannerAdControl.

myBannerAdControl.ErrorOccurred = OnAdError;

Ниже приведен пример определения делегата OnAdError , который записывает сведения об ошибке в окно вывода в Visual Studio.

private void OnAdError(object sender, AdErrorEventArgs e)
{
    System.Diagnostics.Debug.WriteLine("AdControl error (" + ((AdControl)sender).Name + "): " + e.Error +
        " ErrorCode: " + e.ErrorCode.ToString());
}

Пошаговое руководство по обработке ошибок в XAML/C# см. в пошаговом руководстве по обработке ошибок AdControl в XAML и C#.

Приложения JavaScript/HTML

Для обработки ошибок ErrorOccur в приложении JavaScript:

  1. Назначьте событие onErrorOccurred обработчику событий.

  2. Код обработчика событий.

Ниже приведен пример, который назначает обработчик событий с именем errorLogger событию ErrorOccurred объекта AdControl.

<div id="myAd" style="position: absolute; top: 53px; left: 0px; width: 250px; height: 250px; z-index: 1"
     data-win-control="MicrosoftNSJS.Advertising.AdControl"
     data-win-options="{applicationId: '3f83fe91-d6be-434d-a0ae-7351c5a997f1', adUnitId: 'test', onErrorOccurred: errorLogger}">
</div>

Функция обработки ошибок декларативна и должна быть заключена в функцию markSupportedForProcessing .

Обработчик ошибок перехватывает объект ошибки JavaScript при возникновении ошибки. Объект ошибки предоставляет два аргумента обработчику ошибок.

Ниже приведен пример функции обработки ошибок с именем errorLogger , которая обрабатывает событие onErrorOccurred .

WinJS.Utilities.markSupportedForProcessing(
window.errorLogger = function (sender, evt) {
    console.log(new Date()).toLocaleTimeString() + ": " + sender.element.id + " error: " + evt.errorMessage +
    " error code: " + evt.errorCode + \n");
});

Пошаговое руководство по обработке ошибок в JavaScript см. в пошаговом руководстве по обработке ошибок AdControl в JavaScript.