如何解决WP7 Microsoft Advertising AdControl消失并引发异常
|| 我无法在我的Silverlight WP7应用程序中实现AdControl。昨天我在PubCenter上注册并设置了新的Windows Phone 7应用程序。 PubCenter告诉我该申请已获批准,并提供了我的申请ID。对于此帖子,假设应用程序ID为abc-123
。接下来,我创建了一个名为\“ Developer \”的广告单元(我的应用程序适用于开发人员)。
我选择了两个类别(技术与计算机-全部,教育-研究生院)。我选择了“ 6:1比例大横幅(216 * 36)\”作为我的广告单元格式。我不确定广告格式,但是保存后无法更改。对于此帖子,假设广告单元ID为55555
。
我安装了用于Microsoft Advertising的SDK,然后将参考“ѭ2”添加到我的电话项目中。
我将AdControl添加到了我的xaml页面之一:
<UI:AdControl ApplicationId=\"abc-123\" AdUnitId=\"55555\" AdModel=\"Contextual\"></UI:AdControl>
与名称空间:
xmlns:UI=\"clr-namespace:Microsoft.Advertising.Mobile.UI;assembly=Microsoft.Advertising.Mobile.UI\"
在页面后面的代码中,我可以控制我设置了测试模式,就像教程中建议的那样:
using Microsoft.Advertising.Mobile.UI;
...
public MainPage()
{
InitializeComponent();
AdControl.TestMode = true;
}
当我运行应用程序并导航到页面时,我仅看到AdControl的灰色边框,然后AdControl消失了。没有运行时错误或任何可能停止执行的错误。如果查看输出窗口,我会看到控件失败:
\'taskhost.exe \'(托管):已加载
\'\\ Applications \\ Install \\ D9123383-1522-4DCC-A270-AD0E7B642996 \\ Install \\ Microsoft.Advertising.Mobile.UI.dll \'
\'taskhost.exe \'(托管):已加载
\'\\ Applications \\ Install \\ D9123383-1522-4DCC-A270-AD0E7B642996 \\ Install \\ Microsoft.Phone.Controls.dll \'
\'taskhost.exe \'(托管):已加载
\'System.Windows.debug.resources.dll \'A
类型的首次机会异常
\'System.Net.WebException \'发生在
System.Windows.dll第一次机会
类型异常
\'System.Net.WebException \'发生在
System.Windows.dll第一次机会
类型异常
\'System.Net.WebException \'发生在
Microsoft.Advertising.Mobile.UI.dll
我尝试部署到开发人员设备并将测试模式设置为false,结果相同。我什至尝试了在网上阅读的测试参数:
<UI:AdControl ApplicationId=\"test_client\" AdUnitId=\"Image480_80\" AdModel=\"Contextual\"></UI:AdControl>
这也导致控件消失。
解决方法
史蒂夫
我想我看到了问题。您正在
MainPage
构造函数中设置AdControl.TestMode = true
,这在应用程序的启动周期中为时已晚。尝试将该行移至App.xaml.cs
代码隐藏文件的构造函数。 App
类首先加载,在那儿设置模式可确保它足够早地发生。
这里不是100%确定基本原理,但是我猜测是在呈现控件之前需要设置TestMode
。当ѭ8的ѭ13方法完成时,控制树已完成渲染。
让我们知道怎么回事。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。