public static void CreateSingleAdUnit(int id, string resource, Grid grid)
 {
     AdControl ad = new AdControl();
     ad.ApplicationId = App.AppId;
     ad.AdUnitId = id.ToString();
     ad.Style = Application.Current.Resources[resource] as Style;
     ad.IsAutoRefreshEnabled = false;
     ad.Refresh();
     ad.IsAutoRefreshEnabled = true;
     ad.AutoRefreshIntervalInSeconds = 30;
     grid.Children.Add(ad);
 }
 public async void Refresh()
         #endif
 {
                 #if WINDOWS_PHONE
     WinRTPlugin.Dispatcher.BeginInvoke(delegate()
                 #else
     await WinRTPlugin.CoreWindow.Dispatcher.RunAsync(CoreDispatcherPriority.Normal, delegate()
                 #endif
     {
         adControl.Refresh();
     });
 }
Пример #3
0
        private void ActivateMicrosoftBanner()
        {
            // Return if you hit the error limit for this refresh interval.
            if (_errorCountCurrentRefresh >= MaxErrorsPerRefresh)
            {
                MyAdGrid.Visibility = Visibility.Collapsed;
                return;
            }

            // Use random number generator and house ads weight to determine whether
            // to use paid ads or house ads. Paid is the default. You could alternatively
            // write a method similar to GetAdDuplexWeight and override by region.
            string myAdUnit    = WadunitidPaid;
            int    houseWeight = HouseAdWeight;
            int    randomInt   = _randomGenerator.Next(0, 100);

            if (randomInt < houseWeight)
            {
                myAdUnit = WadunitidHouse;
            }

            // Hide the AdDuplex control if it is showing.
            if (null != _myAdDuplexBanner)
            {
                _myAdDuplexBanner.Visibility = Visibility.Collapsed;
            }

            // Initialize or display the Microsoft control.
            if (null == _myMicrosoftBanner)
            {
                _myMicrosoftBanner = new AdControl
                {
                    ApplicationId        = Wapplicationid,
                    AdUnitId             = myAdUnit,
                    Width                = AdWidth,
                    Height               = AdHeight,
                    IsAutoRefreshEnabled = false
                };

                _myMicrosoftBanner.AdRefreshed   += myMicrosoftBanner_AdRefreshed;
                _myMicrosoftBanner.ErrorOccurred += myMicrosoftBanner_ErrorOccurred;

                MyAdGrid.Children.Add(_myMicrosoftBanner);
            }
            else
            {
                _myMicrosoftBanner.AdUnitId   = myAdUnit;
                _myMicrosoftBanner.Visibility = Visibility.Visible;
                _myMicrosoftBanner.Refresh();
            }
        }
        private void ActivateMicrosoftBanner()
        {
            // Return if you hit the error limit for this refresh interval.
            if (errorCountCurrentRefresh >= MAX_ERRORS_PER_REFRESH)
            {
                myAdGrid.Visibility = Visibility.Collapsed;
                return;
            }

            // Use random number generator and house ads weight to determine whether
            // to use paid ads or house ads. Paid is the default. You could alternatively
            // write a method similar to GetAdDuplexWeight and override by region.
            string myAdUnit    = myMicrosoftPaidUnitId;
            int    houseWeight = HOUSE_AD_WEIGHT;
            int    randomInt   = randomGenerator.Next(0, 100);

            if (randomInt < houseWeight)
            {
                myAdUnit = myMicrosoftHouseUnitId;
            }

            // Hide the AdDuplex control if it is showing.
            if (null != myAdDuplexBanner)
            {
                myAdDuplexBanner.Visibility = Visibility.Collapsed;
            }

            // Initialize or display the Microsoft control.
            if (null == myMicrosoftBanner)
            {
                myMicrosoftBanner = new AdControl();
                myMicrosoftBanner.ApplicationId        = myMicrosoftAppId;
                myMicrosoftBanner.AdUnitId             = myAdUnit;
                myMicrosoftBanner.Width                = AD_WIDTH;
                myMicrosoftBanner.Height               = AD_HEIGHT;
                myMicrosoftBanner.IsAutoRefreshEnabled = false;

                myMicrosoftBanner.AdRefreshed   += myMicrosoftBanner_AdRefreshed;
                myMicrosoftBanner.ErrorOccurred += myMicrosoftBanner_ErrorOccurred;

                myAdGrid.Children.Add(myMicrosoftBanner);
            }
            else
            {
                myMicrosoftBanner.AdUnitId   = myAdUnit;
                myMicrosoftBanner.Visibility = Visibility.Visible;
                myMicrosoftBanner.Refresh();
            }
        }
 private void SetNextAdsRefresh(AdControl adControl, int rateInSecond)
 {
     if (Config.IsRefreshOn)
     {
         var adsTimer = new DispatcherTimer { Interval = TimeSpan.FromSeconds(rateInSecond) };
         adsTimer.Tick += (sender, args) =>
         {
             adControl.Refresh();
             adsTimer.Stop();
         };
         adsTimer.Start();
     }
 }