我尝试运行Marketplace测试工具包,但是在功能验证方面失败了,其中包含Microsoft.Advertising.Mobile.dll试图进行的一系列调用。这是可以理解的,但在任何情况下我都没有尝试从BackgroundAgent更新AdControl。我能想到的最接近的是:
public ScheduledAgent()
{
if (!_classInitialized)
{
_classInitialized = true;
// Subscribe to the managed exception handler
Deployment.Current.Dispatcher.BeginInvoke(delegate
{
Application.Current.UnhandledException += ScheduledAgent_UnhandledException;
});
}
}
Application.Current调用是否正在尝试使用广告控件?如果是这样,我怎么能阻止它这样做呢?
编辑:这是其中一条错误消息的输出:
Unsupported API cannot be used by a background agent. Assembly Microsoft.Advertising.Mobile.dll was trying to use Microsoft.Phone.Tasks.PhoneCallTask::.ctor.
答案 0 :(得分:0)
好的,它根本与代码示例无关。问题是我通过我创建的Windows Phone Library生成广告控件。这个库的模型正由后台代理使用,这显然使测试工具包相信应用程序以某种方式使用了广告逻辑。
我删除了Ads.cs并将其正在执行的操作迁移到页面中,这解决了问题。
编辑:我认为更安全地说,不是市场测试套件认为后台代理正在使用AdControl的库,而是它有能力这样做。我认为值得区分。