使用不同的手机屏幕尺寸调整Pubcenter广告

时间:2014-09-08 08:12:51

标签: c# xaml windows-phone-8 windows-phone-8.1 advertising

我正在开发Windows Phone 8.1运行时应用程序(XAML但不是Silverlight)。

我的问题是我应该在应用中显示哪个PubCenter广告尺寸。

目前,PubCenter for phone支持4种不同的尺寸:

  1. 300 X 50
  2. 320 X 50
  3. 480 X 80
  4. 640 X 100
  5. 我的问题是:

    1. 无论设备大小如何,我都可以使用单一尺寸(这样可以自动缩放)。
    2. 或者根据用户的设备尺寸,我应该设置宽度,高度和宽度。代码背后的AdUnitId。如果这是正确的选项,如何启用它。
    3. (基本上,我不想在用户手机上浪费任何宝贵的空间。想要根据用户的屏幕尺寸显示最大的广告)

      感谢。

2 个答案:

答案 0 :(得分:2)

本文详细介绍了在Windows Phone 8.1 RT应用程序中使用的格式:

Use the Recommended AdUnit Format Size and AdControl Size

我能够通过下面的代码实现这一点。因此,对于大多数Lumia手机,它将采用msdn文章中建议的320 x 50尺寸。但对于屏幕较大的手机,则需要其他尺寸。

确定几件事:

  1. 广告单元已在pubcenter中定义。每种尺寸都有单独的广告单元。
  2. adcontrol必须放在容量足够大的容器内。

    #region Initialize Ad Control
        //var scaleFactor = DisplayInformation.GetForCurrentView().RawPixelsPerViewPixel;
        //Debug.WriteLine("The current resolution is {0}x{1}", Window.Current.Bounds.Width * scaleFactor, Window.Current.Bounds.Height * scaleFactor);
    
        double pageWidth = 0;
        //pageWidth = Window.Current.Bounds.Width * scaleFactor;
        pageWidth = Window.Current.Bounds.Width;
    
        AdUnit.ApplicationId = "abcdefgzzzz-zz-zz-z-zz";
        //AdUnit.ApplicationId = "test_client";
    
        if (pageWidth < 480) //Use 320
        {
            AdUnit.Height = 50;
            AdUnit.Width = 320;
            //AdUnit.AdUnitId = "Image320_50";
            AdUnit.AdUnitId = "320-ZZZZ";
        }
        else if (pageWidth >= 480 && pageWidth < 640) //Use 480
        {
            AdUnit.Height = 80;
            AdUnit.Width = 480;
            //AdUnit.AdUnitId = "Image480_80";
            AdUnit.AdUnitId = "480-ZZZZZ";
        }
        else if (pageWidth >= 640)
        {
            AdUnit.Height = 100;
            AdUnit.Width = 640;
            AdUnit.AdUnitId = "640-ZZZZ";
        }
        #endregion
    

答案 1 :(得分:0)

Nop,我认为您无法根据设备大小更改广告。因为他们默认提供了唯一可用的尺寸。

有关详情,请参阅:

Microsoft Ad SDK

Set up ads in Windows Phone 8

希望它有所帮助!