0

我尝试了 IsEngagedChanged、PointerPressed/PointerReleased,当我单击 AdControl 时,这些事件都不会被触发。(确实发生了 AdRefreshed 事件)

我正在用 C#/XAML 开发一个 Windows 应用商店应用程序。

<ad:AdControl Height="90" x:Name="ad1" Width="728" AdUnitId="10042998" ApplicationId="d25517cb-12d4-4699-8bdc-52040c712cab" IsEngagedChanged="ad1_IsEngagedChanged_1" AdRefreshed="ad1_AdRefreshed_1" PointerPressed="ad1_PointerPressed_1" />

    private void ad1_IsEngagedChanged_1(object sender, RoutedEventArgs e)
    {
         //not fired
    }

    private void ad1_AdRefreshed_1(object sender, RoutedEventArgs e)
    {
         //fired
    }

    private void ad1_PointerPressed_1(object sender, PointerRoutedEventArgs e)
    {
         //not fired
    }

我想奖励用户点击广告。

4

1 回答 1

1

The IsEngagedChanged-event does actually fire, but not really when you expect it to. If you use ads which causes the ad to go full-screen (click-to-fullscreen) the IsEngagedChanged-event will fire when a user clicks it. If you use a normal ad (which you did according to your adUnitId) which goes to some link, the event will not fire. It's stupid as hell.

As Walt Ritscher pointed out, this is in the docs:

Raised when the user clicks the ad, and is interacting with it rather than the app.

Which makes one believe it would get called on any click, but it doesn't. There's so many things missing/"wrong" in the Microsoft Advertising SDK that you wanna cry.

Hope this helped someone.

于 2015-04-28T20:00:43.767 回答