【问题标题】:Set up ads in Windows Phone 8在 Windows Phone 8 中设置广告
【发布时间】:2012-11-16 12:56:33
【问题描述】:

我发现了一些针对类似问题的零散回复(主要针对 Windows Phone 7),但我想发布一个包含所有 Windows Phone 8 广告要求的答案。

我在 Windows Phone 8 中设置广告时遇到了一些问题。每次运行模拟器时,都会遇到应用程序可以运行但广告不显示的问题。

应用程序运行正常,但我注意到在输出控制台中记录了以下异常:

An exception of type 'Microsoft.Advertising.Shared.AdException' occurred in Microsoft.Advertising.Mobile.DLL and wasn't handled before a managed/native boundary

广告在我正在开发的一个应用程序中正常显示,但在另一个应用程序中却没有,并且该异常未显示任何有用的信息。

【问题讨论】:

    标签: windows-phone ads windows-phone-8 windows-phone-8-emulator


    【解决方案1】:

    我想出了如何捕获异常并查看问题到底是什么(这是我的清单文件中大量缺失的功能)。为了尝试从 AdControl 中捕获异常并获取我需要的数据,我将以下内容添加到我的页面中。

    捕获广告控制错误

        public MainPage()
        {
            InitializeComponent();
    
            AdUnit.ErrorOccurred += AdUnit_ErrorOccurred;
        }
    
        void AdUnit_ErrorOccurred(object sender, Microsoft.Advertising.AdErrorEventArgs e)
        {
            throw new NotImplementedException();
        }
    

    这表明我缺少 MEDIALIB 权限和 PHONEDIALER 权限。我进行了一些测试并确定任何运行广告的应用都需要以下权限:

    所需权限

    ID_CAP_IDENTIFY_USER
    ID_CAP_MEDIALIB_PHOTO
    ID_CAP_NETWORKING
    ID_CAP_PHONEDIALER
    ID_CAP_WEBBROWSERCOMPONENT
    

    设置参数

    从我读过的其他帖子中,确保将广告单元的宽度/高度正确设置为 480/80 也很重要,如果它是自动的并且没有最小尺寸,那么广告将不会显示。

    确保在模拟器中查看它只能使用test ApplicationId and AdUnitId。 PubCenter 凭据仅适用于已发布的应用程序。

    <UI:AdControl x:Name="AdUnit" Height="80" Width="480"
        AdUnitId="Image480_80" ApplicationId="test_client" />
    

    隐藏或交换失败/空广告控件

    如果您的 AdControl 失败,它会在您的广告中留下很大的空白。您可以隐藏它或将其与来自其他网络的广告交换。为此,请捕获如上所示的异常 (AdUnit_ErrorOccurred) 并添加以下内容:

    隐藏:

    AdUnit.Height = 0;
    AdUnit.Visibility = System.Windows.Visibility.Collapsed;
    

    单独设置可见性不起作用,高度也必须设置为 0。

    交换广告:

    您可以显示来自http://www.adduplex.com 等服务的备用广告栏,而不是隐藏 AdControl。

    【讨论】:

    • 我遵循了您的指南,并且添加单元工作正常。但是,现在当我在详细信息下将其提交到市场(仍在签署过程中)时,我可以看到“添加单位 - 无”,这让我有点担心。这正常吗?
    • @Booyaches 我相信这适用于您在提交应用时使用可选的“添加应用内广告”步骤设置的广告单元。现有的 pubCenter 账户似乎还没有启用此步骤,因此大多数人无法使用它。您的广告应该仍能正常显示,如果可能的话,在实际设备上进行测试以确保您的设置正确。
    • @ellemayo 嗨,您能告诉我们在页面上展示广告需要多少费用吗?
    • @loop 它会显示多长时间?设置完成后不应超过一两秒...使用测试广告确保设置正确,并且显示速度更快。
    • @ellemayo 实际上一切都已设置好,我只是探索在哪个页面上显示添加内容更好.. 以便将其计为印象。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多