wordpress   发布时间:2022-04-02  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了windows-phone-7 – Inneractive Ads会导致很多应用程序崩溃(Windows Phone)大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
@H_944_3@概述 我使用InnerActive作为我的 Windows Phone应用程序的默认广告提供.我从2013年6月开始使用它,在年终分析中,我发现InnerActive广告是我应用程序崩溃的主要来源.最糟糕的是,它的代码不是我没有任何控制权.我已经针对请求Inneractive Ads的每个操作放置了“try catch”. 有谁知道如何解决这个问题? 我用来请求广告的代码在哪里: private voi
我使用InnerActive作为我的 Windows Phone应用程序的认广告提供.我从2013年6月开始使用它,在年终分析中,我发现InnerActive广告是我应用程序崩溃的主要来源.最糟糕的是,它的代码不是我没有任何控制权.我已经针对请求Inneractive Ads的每个操作放置了“try catch”.

有谁知道如何解决这个问题?

我用来请求广告的代码在哪里:

private void LoadInnerActiveAds()
{
    try
    {
        if (DeviceNetworkInformation.IsNetworkAvailablE)
        {
            // Watch LOCATIOn
            if (_allowAdLOCATIOnTracker)
            {
                IaLOCATIOnClass iaLOCATIOn = new IaLOCATIOnClass();
                iaLOCATIOn.Done += new EventHandler<IaLOCATIOnEventArgs>(InnerActiveLOCATIOn_DonE);
                iaLOCATIOn.StartWatchLOCATIOn();
            }

            optionalParams = new Dictionary<InneractiveAd.IaOptionalParams,String>();
            //optionalParams.Add(InneractiveAd.IaOptionalParams.Key_gender,"m");
            optionalParams.Add(InneractiveAd.IaOptionalParams.Key_Ad_Alignment,InneractiveAd.IaAdAlignment.CENTER.ToString());
            optionalParams.Add(InneractiveAd.IaOptionalParams.Key_OptionalAdWidth,"480");
            optionalParams.Add(InneractiveAd.IaOptionalParams.Key_OptionalAdHeight,"80");
        }

        //Show Add BAnner. REMARKs: pay attention to use Application Id from NAX
        //naxAd.Childred.Count()==0 => just to add one bAnner control on a page. Without this,code would add as many bAnners as you navigate to page where bAnner is placed
        if (optionalParams != null && AdsUIContainer.Children.Count == 0)
        {
            InneractiveAd iaBAnner = new InneractiveAd(AdsAppId,InneractiveAd.IaAdType.IaAdType_BAnner,30,optionalParams);
            iaBAnner.AdFailed += new InneractiveAd.IaAdFailed(InneractiveAd_AdFailed);

            Deployment.Current.Dispatcher.beginInvoke(() => { updateUI(iaBAnner); });
        }
    }
    catch (Exception eX)
    {
        InneractiveAd_AdFailed(eX);
    }
}

这种堆栈跟踪可能有所帮助,但请记住这是我无法控制的代码.

Frame    Image               @R_686_3816@                                                               Offset        
0        system_xml_ni        System.Xml.XmlTextReaderImpl.Throw                                     0x00000036    
1        system_xml_ni        System.Xml.XmlTextReaderImpl.ParseDocumentContent                      0x00000438    
2        system_xml_ni        System.Xml.XmlTextReaderImpl.Read                                      0x00000036    
3        system_xml_ni        System.Xml.XmlReader.ReadToFollowing                                   0x0000003c    
4        inneractive_ad_ni    Inneractive.Ad.InneractiveAdControl.ParseCPDXml                        0x0000007c    
5        inneractive_ad_ni    Inneractive.Ad.InneractiveAdControl.webClient_UploadStringCompleted    0x000000aa    
6        system_net_ni        System.Net.WebClient.onUploadStringCompleted                           0x00000010    
7        system_net_ni        System.Net.WebClient.UploadStringOperationCompleted                    0x00000034

解:

根据Soonts的建议,这就是我提出的:

在App.xaml.cs文件中找到“Application_UnhandledException”方法并将其替换为:

// Code to execute on Unhandled Exceptions
private void Application_UnhandledException(object sender,ApplicationUnhandledExceptionEventArgs E)
{
    if (e.ExceptionObject.StackTrace.Contains("Inneractive.Ad.InneractiveAdControl"))
    {
        // Recover from the error
        e.Handled = true;
        return;
    }

    if (Debugger.IsAttached)
    {
        // An unhandled exception has occurred; break into the debugger
        Debugger.break();
    }
}

如果您找到更好的替代品,请告诉我.

解决方法

首先,联系InnerActive告诉他们修复他们的软件.这是他们的责任.

同时,如果您知道如何重现该问题,您可以尝试以下.订阅所有未处理的异常(从Application.UnhandledException开始,也有AppDomain.UnhandledException和Taskscheduler.UnobservedTaskException),在Exception.StackTrace中处理器搜索“Inneractive.Ad.InneractiveAdControl”,如果找到 – 忽略异常,并且可选地隐藏或重新加载不相关的横幅.

大佬总结

以上是大佬教程为你收集整理的windows-phone-7 – Inneractive Ads会导致很多应用程序崩溃(Windows Phone)全部内容,希望文章能够帮你解决windows-phone-7 – Inneractive Ads会导致很多应用程序崩溃(Windows Phone)所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。