private void RefreshAds() { if (AdSpaceWidth > 0 && ShowAds) { int numAds = (int)AdSpaceWidth / 320; if (numAds > 3) { numAds = 3; } while (AdPanel.Children.Count > numAds) { AdPanel.Children.RemoveAt(AdPanel.Children.Count - 1); } while (AdPanel.Children.Count < numAds) { AdDuplex.AdControl ad = new AdDuplex.AdControl() { AdUnitId = AdUnitIds[AdPanel.Children.Count], AppKey = this.AppKey }; AdPanel.Children.Add(ad); } } else { AdPanel.Children.Clear(); } }
private void ActivateAdDuplexBanner() { // Return if you hit the error limit for this refresh interval. if (errorCountCurrentRefresh >= MAX_ERRORS_PER_REFRESH) { myAdGrid.Visibility = Visibility.Collapsed; return; } // Hide the Microsoft control if it is showing. if (null != myMicrosoftBanner) { myMicrosoftBanner.Visibility = Visibility.Collapsed; } // Initialize or display the AdDuplex control. if (null == myAdDuplexBanner) { myAdDuplexBanner = new AdDuplex.AdControl(); myAdDuplexBanner.AppKey = ADDUPLEX_APPKEY; myAdDuplexBanner.AdUnitId = ADDUPLEX_ADUNIT; myAdDuplexBanner.Width = AD_WIDTH; myAdDuplexBanner.Height = AD_HEIGHT; myAdDuplexBanner.RefreshInterval = AD_REFRESH_SECONDS; myAdDuplexBanner.AdLoaded += myAdDuplexBanner_AdLoaded; myAdDuplexBanner.AdCovered += myAdDuplexBanner_AdCovered; myAdDuplexBanner.AdLoadingError += myAdDuplexBanner_AdLoadingError; myAdDuplexBanner.NoAd += myAdDuplexBanner_NoAd; myAdGrid.Children.Add(myAdDuplexBanner); } myAdDuplexBanner.Visibility = Visibility.Visible; }
public void Init(string appKey, string uid) { var ad = new AdDuplex.AdControl(); ad.AdUnitId = uid; ad.AppKey = appKey; LayoutRoot.Children.Add(ad); }
private AdDuplex.AdControl LoadNewAdduplexAds() { AdDuplex.AdControl AdduplexAds = new AdDuplex.AdControl(); AdduplexAds.Width = AdWidth; AdduplexAds.Height = AdHeight; AdduplexAds.AdUnitId = AdduplexAdId; AdduplexAds.AppKey = AdduplexAppKey; AdduplexAds.RefreshInterval = RefreshInterval_Adduplex; AdduplexAds.AutoSize = true; // AdduplexAds.size = string.Format("{0}x{1}", AdWidth, AdHeight); //AdduplexAds.IsTest = true; AdduplexAds.RefreshInterval = 999; AdduplexAds.NoAd += AdduplexAds_NoAd; AdduplexAds.AdLoaded += AdduplexAds_AdLoaded; AdduplexAds.AdLoadingError += AdduplexAds_AdLoadingError; return(AdduplexAds); }
private void RefreshAds() { if (AdSpaceWidth > 0 && ShowAds) { int numAds = (int)AdSpaceWidth / 320; if (numAds > 3) numAds = 3; while (AdPanel.Children.Count > numAds) { AdPanel.Children.RemoveAt(AdPanel.Children.Count - 1); } while (AdPanel.Children.Count < numAds) { AdDuplex.AdControl ad = new AdDuplex.AdControl() { AdUnitId = AdUnitIds[AdPanel.Children.Count], AppKey = this.AppKey }; AdPanel.Children.Add(ad); } } else { AdPanel.Children.Clear(); } }
private void ActivateAdDuplexBanner() { // Return if you hit the error limit for this refresh interval. if (_errorCountCurrentRefresh >= MaxErrorsPerRefresh) { MyAdGrid.Visibility = Visibility.Collapsed; return; } // Hide the Microsoft control if it is showing. if (null != _myMicrosoftBanner) { _myMicrosoftBanner.Visibility = Visibility.Collapsed; } // Initialize or display the AdDuplex control. if (null == _myAdDuplexBanner) { _myAdDuplexBanner = new AdDuplex.AdControl { AppKey = AdduplexAppkey, AdUnitId = AdduplexAdunit, Width = AdWidth, Height = AdHeight, RefreshInterval = AdRefreshSeconds }; _myAdDuplexBanner.AdLoaded += myAdDuplexBanner_AdLoaded; _myAdDuplexBanner.AdCovered += myAdDuplexBanner_AdCovered; _myAdDuplexBanner.AdLoadingError += myAdDuplexBanner_AdLoadingError; _myAdDuplexBanner.NoAd += myAdDuplexBanner_NoAd; MyAdGrid.Children.Add(_myAdDuplexBanner); } _myAdDuplexBanner.Visibility = Visibility.Visible; }
private FrameworkElement CreateAdDuplexControl() { var adDuplexAd = new AdDuplex.AdControl(); adDuplexAd.AppId = AdDuplexAppId; //adDuplexAd.IsTest = true; return adDuplexAd; }
private object CreateAdDuplexControl() { try { var adDuplexAd = new AdDuplex.AdControl(); adDuplexAd.AppId = AdDuplexAppId; //adDuplexAd.IsTest = true; return adDuplexAd; } catch (Exception) { return new Model.NoneProvider(); } }
private void RefreshNewAdSet() { /* if (leadbolt_controller != null) * { * try * { * leadbolt_controller.DestroyAd(); * } * catch { } * leadbolt_controller = null; * }*/ UIElementCollection collection = Grid_Ads.Children; foreach (UIElement ui in collection) { Type type = ui.GetType(); if (type != typeof(Grid)) { Grid_Ads.Children.Remove(ui); } } AdNetworkEnum network = AdNetworkEnum.None; bool Selected = false; while (!Selected) { int rand = new Random().Next(100); if (rand < 80)//60) { network = AdNetworkEnum.Microsoft_Pubcenter; } /* else if (rand < 80) * { * network = AdNetworkEnum.LeadBolt; * if (network == AdNetworkEnum.LeadBolt) * { * Grid_Ads.Width = 300; * Grid_Ads.Height = 500; * } * else * { * Grid_Ads.Width = 160; * Grid_Ads.Height = 600; * } * }*/ else if (rand < 200) { network = AdNetworkEnum.AdDuplex; } // else // { // network = AdNetworkEnum.InMobi; // } if (DisabledNetwork.ContainsKey(network)) { if (DateTime.Now.Ticks - DisabledNetwork[network] < 5 * TimeSpan.TicksPerSecond) { continue; } else { DisabledNetwork[network] = DateTime.Now.Ticks; Selected = true; } } else { DisabledNetwork.Add(network, DateTime.Now.Ticks); Selected = true; } } Debug.WriteLine("Refreshing ad to: " + network.ToString()); switch (network) { case AdNetworkEnum.AdDuplex: { AdDuplex.AdControl adDuplexAd = LoadNewAdduplexAds(); Grid_Ads.Children.Add(adDuplexAd); break; } case AdNetworkEnum.InMobi: { /*IMAdView inMobiAd = InitializeInmobi(); * Grid_Ads.Children.Add(inMobiAd); * * inMobiAd.LoadNewAd();*/ break; } case AdNetworkEnum.Microsoft_Pubcenter: { Microsoft.Advertising.WinRT.UI.AdControl pubcenterAd = LoadNewPubCenterAds(); Grid_Ads.Children.Add(pubcenterAd); pubcenterAd.Refresh(); break; } default: { break; } } }
public static void DecideAdControl(Grid LayoutRoot, TextBlock txtInfomation) { if (IsAdvertising) { //원할한 광고 수신을 위해 지역 고정 string appId = VersionType == VersionTypes.AMK ? Constant.MS_MK_ADVERTISING_APPID : Constant.MS_TK_ADVERTISING_APPID; string unitId = VersionType == VersionTypes.AMK ? Constant.MS_MK_ADVERTISING_AD_UNIT_ID : Constant.MS_TK_ADVERTISING_AD_UNIT_ID; double width = 480; double height = 80; double txtTopMargin = 60; HorizontalAlignment hAlign = HorizontalAlignment.Left; VerticalAlignment vAlign = VerticalAlignment.Top; Thickness margin = new Thickness(0); //마우스 안내 문구 위치 이동 Thickness txtMargin = txtInfomation.Margin; txtMargin.Top += txtTopMargin; txtInfomation.Margin = txtMargin; Grid adGrd = new Grid(); adGrd.VerticalAlignment = System.Windows.VerticalAlignment.Top; adGrd.HorizontalAlignment = System.Windows.HorizontalAlignment.Stretch; //my ad ImageButton myAdCtrl = new ImageButton(); myAdCtrl.Width = width; myAdCtrl.Height = height; myAdCtrl.HorizontalAlignment = hAlign; myAdCtrl.VerticalAlignment = vAlign; myAdCtrl.Margin = margin; BitmapImage tn = new BitmapImage(); tn.SetSource(Application.GetResourceStream(UIUtils.GetRelativeUri(ResourceUri.IMG_AD_PLACEHOLDER)).Stream); myAdCtrl.Image = tn; //AdControl msAdCtrl = new AdControl("test_client", "Image480_80", true); AdControl msAdCtrl = new AdControl(appId, unitId, true); AdDuplex.AdControl adDuplexCtrl = new AdDuplex.AdControl() { AppId = Constant.ADDUPLEX_ID }; //adDuplexCtrl.IsTest = true; myAdCtrl.Tap += (s, e) => { //페이지 이동 WebBrowserTask wbt = new WebBrowserTask(); wbt.Uri = new Uri(string.Format("http://windowsphone.com/s?appId={0}", Constant.FULL_VERSION_APP_ID), UriKind.Absolute); wbt.Show(); //광고바 숨김 LayoutRoot.Children.Remove(adGrd); txtMargin.Top -= txtTopMargin; txtInfomation.Margin = txtMargin; }; //adduplex adDuplexCtrl.HorizontalAlignment = hAlign; adDuplexCtrl.VerticalAlignment = vAlign; adDuplexCtrl.Margin = margin; adDuplexCtrl.Width = width; adDuplexCtrl.Height = height; adDuplexCtrl.AdClick += (s, e) => { LayoutRoot.Children.Remove(adGrd); txtMargin.Top -= txtTopMargin; txtInfomation.Margin = txtMargin; }; adDuplexCtrl.AdLoadingError += (s, e) => { if (e.Error.Message != "Ad control is hidden by other control") { Deployment.Current.Dispatcher.BeginInvoke(() => { adGrd.Children.Remove(adDuplexCtrl); //다음광고 호출 adGrd.Children.Add(myAdCtrl); }); } }; //ms ad msAdCtrl.HorizontalAlignment = hAlign; msAdCtrl.VerticalAlignment = vAlign; msAdCtrl.Margin = margin; msAdCtrl.Height = height; msAdCtrl.Width = width; msAdCtrl.IsAutoCollapseEnabled = false; msAdCtrl.ErrorOccurred += (s, e) => { //다음광고 호출 Deployment.Current.Dispatcher.BeginInvoke(() => { adGrd.Children.Remove(msAdCtrl); adGrd.Children.Add(adDuplexCtrl); }); if (System.Diagnostics.Debugger.IsAttached) { MessageBox.Show("MS Advertising : " + e.Error.Message); } }; msAdCtrl.IsEngagedChanged += (s, e) => { LayoutRoot.Children.Remove(adGrd); txtMargin.Top -= txtTopMargin; txtInfomation.Margin = txtMargin; }; TextBlock adTxt = new TextBlock(); adTxt.Margin = new Thickness(485, 0, 0, 0); adTxt.HorizontalAlignment = System.Windows.HorizontalAlignment.Left; adTxt.VerticalAlignment = System.Windows.VerticalAlignment.Center; adTxt.Text = I18n.GetString("AdClickMessage"); adTxt.TextWrapping = TextWrapping.Wrap; adGrd.Children.Add(msAdCtrl); adGrd.Children.Add(adTxt); LayoutRoot.Children.Add(adGrd); } }