Ejemplo n.º 1
0
        /// <summary>
        /// Use to create multiple Ads.
        /// </summary>
        /// <param name="descs">Your AdDesc settings.</param>
        /// <param name="createdCallback">The callback that fires when done.</param>
        /// <returns>Returns array of Ad objects</returns>
        public static Ad[] CreateAd(AdDesc[] descs, AdCreatedCallbackMethod createdCallback)
        {
            if (creatingAds)
            {
                Debug.LogError("You must wait for the last ads to finish being created!");
                if (createdCallback != null)
                {
                    createdCallback(false);
                }
                return(null);
            }
            creatingAds = true;
            AdManager.createdCallback = createdCallback;

            int startLength = plugins.Count;

            for (int i = 0; i != descs.Length; ++i)
            {
                plugins.Add(AdPluginAPI.New(descs[i], async_CreatedCallback));
            }

            var ads = new Ad[descs.Length];

            for (int i = 0, i2 = startLength; i != descs.Length; ++i, ++i2)
            {
                ads[i] = new Ad(plugins[i2]);
            }
            return(ads);
        }
Ejemplo n.º 2
0
        public DFP_AdPlugin_iOS(AdDesc desc, AdCreatedCallbackMethod createdCallback)
        {
                        #if !IOS_DISABLE_GOOGLE_ADS
            bool pass = true;
            try
            {
                eventCallback = desc.EventCallback;
                native        = DFP_InitAd(desc.Testing);
                int gravity = convertGravity(desc.iOS_DFP_AdGravity);

                DFP_CreateAd(native, gravity, convertAdSize(desc.iOS_DFP_AdSize), desc.iOS_DFP_UnitID);
                Visible = desc.Visible;
            }
            catch (Exception e)
            {
                Debug.LogError(e.Message);
                pass = false;
            }

            if (createdCallback != null)
            {
                createdCallback(pass);
            }
                        #endif
        }
Ejemplo n.º 3
0
 /// <summary>
 /// Dumy constructor.
 /// </summary>
 /// <param name="desc"></param>
 /// <param name="createdCallback"></param>
 public Dumy_AdPlugin(AdDesc desc, AdCreatedCallbackMethod createdCallback)
 {
     Visible = desc.Visible;
     if (createdCallback != null)
     {
         createdCallback(true);
     }
 }
Ejemplo n.º 4
0
		public iAd_AdPlugin_iOS(AdDesc desc, AdCreatedCallbackMethod createdCallback)
		{
			eventCallback = desc.EventCallback;
			native = iAd_InitAd(desc.Testing);
			int gravity = convertGravity(desc.iOS_iAd_AdGravity);
			
			iAd_CreateAd(native, gravity);
			Visible = desc.Visible;
			if (createdCallback != null) createdCallback(true);
		}
Ejemplo n.º 5
0
        public iAd_AdPlugin_iOS(AdDesc desc, AdCreatedCallbackMethod createdCallback)
        {
            eventCallback = desc.EventCallback;
            native        = iAd_InitAd(desc.Testing);
            int gravity = convertGravity(desc.iOS_iAd_AdGravity);

            iAd_CreateAd(native, gravity);
            Visible = desc.Visible;
            if (createdCallback != null)
            {
                createdCallback(true);
            }
        }
Ejemplo n.º 6
0
        public AdPlugin(AdDesc desc, AdCreatedCallbackMethod createdCallback)
        {
            bool pass = true;

            try
            {
                this.desc = desc;

                if (!desc.UseClassicGUI)
                {
                    // Create Ad Canvas
                    adCanvas = new GameObject("Editor Ad");
                    GameObject.DontDestroyOnLoad(adCanvas);
                    adCanvas.AddComponent <RectTransform>();
                    var canvas = adCanvas.AddComponent <Canvas>();
                    canvas.renderMode   = RenderMode.ScreenSpaceOverlay;
                    canvas.sortingOrder = desc.UnityUI_SortIndex;
                    adCanvas.AddComponent <CanvasScaler>();
                    adCanvas.AddComponent <GraphicRaycaster>();

                    // Create ad
                    var ad = new GameObject("AdButtonImage");
                    ad.transform.parent = adCanvas.transform;
                    adRect                 = ad.AddComponent <RectTransform>();
                    adImage                = ad.AddComponent <Image>();
                    adImage.sprite         = Resources.Load <Sprite>("Reign/Ads/DemoAd");
                    adImage.preserveAspect = true;
                    var button = ad.AddComponent <Button>();
                    button.onClick.AddListener(adClicked);
                }

                // set default visible state and gravity
                Visible = desc.Visible;
                SetGravity(desc.Editor_AdGravity);

                // set screen size changed callback
                ReignServices.ScreenSizeChangedCallback += ReignServices_ScreenSizeChangedCallback;
            }
            catch (Exception e)
            {
                Debug.LogError(e.Message);
                pass = false;
            }

            if (createdCallback != null)
            {
                createdCallback(pass);
            }
        }
Ejemplo n.º 7
0
		public DFP_AdPlugin_Android(AdDesc desc, AdCreatedCallbackMethod createdCallback)
		{
			this.createdCallback = createdCallback;
			try
			{
				eventCallback = desc.EventCallback;
				native = new AndroidJavaClass("com.reignstudios.reignnative.DFP_AdsNative");
				visible = desc.Visible;
				id = Guid.NewGuid().ToString();
				native.CallStatic("CreateAd", desc.Android_DFP_UnitID, desc.Testing, desc.Visible, convertGravity(desc.Android_DFP_AdGravity), convertAdSize(desc.Android_DFP_AdSize), id);
			}
			catch (Exception e)
			{
				Debug.LogError(e.Message);
				if (createdCallback != null) createdCallback(false);
			}
		}
Ejemplo n.º 8
0
        /// <summary>
        /// Use to create a single Ad.
        /// </summary>
        /// <param name="desc">Your AdDesc settings.</param>
        /// <param name="createdCallback">The callback that fires when done.</param>
        /// <returns>Returns Ad object</returns>
        public static Ad CreateAd(AdDesc desc, AdCreatedCallbackMethod createdCallback)
        {
            if (creatingAds)
            {
                Debug.LogError("You must wait for the last ad to finish being created!");
                if (createdCallback != null)
                {
                    createdCallback(false);
                }
                return(null);
            }
            creatingAds = true;
            AdManager.createdCallback = createdCallback;
            plugins.Add(AdPluginAPI.New(desc, async_CreatedCallback));

            return(new Ad(plugins[plugins.Count - 1]));
        }
Ejemplo n.º 9
0
		public AdPlugin(AdDesc desc, AdCreatedCallbackMethod createdCallback)
		{
			bool pass = true;
			try
			{
				this.desc = desc;

				if (!desc.UseClassicGUI)
				{
					// Create Ad Canvas
					adCanvas = new GameObject("Editor Ad");
					GameObject.DontDestroyOnLoad(adCanvas);
					adCanvas.AddComponent<RectTransform>();
					var canvas = adCanvas.AddComponent<Canvas>();
					canvas.renderMode = RenderMode.ScreenSpaceOverlay;
					canvas.sortingOrder = desc.UnityUI_SortIndex;
					adCanvas.AddComponent<CanvasScaler>();
					adCanvas.AddComponent<GraphicRaycaster>();

					// Create ad
					var ad = new GameObject("AdButtonImage");
					ad.transform.parent = adCanvas.transform;
					adRect = ad.AddComponent<RectTransform>();
					adImage = ad.AddComponent<Image>();
					adImage.sprite = Resources.Load<Sprite>("Reign/Ads/DemoAd");
					adImage.preserveAspect = (desc.Editor_FixedWidthOverride <= 0 || desc.Editor_FixedHeightOverride <= 0);
					var button = ad.AddComponent<Button>();
					button.onClick.AddListener(adClicked);
				}

				// set default visible state and gravity
				Visible = desc.Visible;
				SetGravity(desc.Editor_AdGravity);

				// set screen size changed callback
				ReignServices.ScreenSizeChangedCallback += ReignServices_ScreenSizeChangedCallback;
			}
			catch (Exception e)
			{
				Debug.LogError(e.Message);
				pass = false;
			}
				
			if (createdCallback != null) createdCallback(pass);
		}
Ejemplo n.º 10
0
		public AdMob_AdPlugin_iOS(AdDesc desc, AdCreatedCallbackMethod createdCallback)
		{
			bool pass = true;
			try
			{
				eventCallback = desc.EventCallback;
				native = AdMob_InitAd(desc.Testing);
				int gravity = convertGravity(desc.iOS_AdMob_AdGravity);
				
				AdMob_CreateAd(native, gravity, convertAdSize(desc.iOS_AdMob_AdSize), desc.iOS_AdMob_UnitID);
				Visible = desc.Visible;
			}
			catch (Exception e)
			{
				Debug.LogError(e.Message);
				pass = false;
			}
				
			if (createdCallback != null) createdCallback(pass);
		}
Ejemplo n.º 11
0
 public Amazon_AdPlugin_Android(AdDesc desc, AdCreatedCallbackMethod createdCallback)
 {
     this.createdCallback = createdCallback;
     try
     {
         eventCallback = desc.EventCallback;
         native        = new AndroidJavaClass("com.reignstudios.reignnative.Amazon_AdsNative");
         visible       = desc.Visible;
         id            = Guid.NewGuid().ToString();
         native.CallStatic("CreateAd", desc.Android_AmazonAds_ApplicationKey, desc.Testing, desc.Visible, convertGravity(desc.Android_AmazonAds_AdGravity), convertAdSize(desc.Android_AmazonAds_AdSize), desc.Android_AmazonAds_RefreshRate, id);
     }
     catch (Exception e)
     {
         Debug.LogError(e.Message);
         if (createdCallback != null)
         {
             createdCallback(false);
         }
     }
 }
Ejemplo n.º 12
0
        public AdMob_AdPlugin_Native(AdDesc desc, AdCreatedCallbackMethod createdCallback)
        {
            eventCallback = desc.EventCallback;
            testing       = desc.Testing;

            WinRTPlugin.Dispatcher.BeginInvoke(delegate()
            {
                bool pass = true;
                try
                {
                    adView = new AdView();
                    setGravity(desc.WP8_AdMob_AdGravity);

                    adView.AdUnitID = desc.WP8_AdMob_UnitID;
                    adView.Format   = desc.WP8_AdMob_AdSize == WP8_AdMob_AdSize.Banner ? AdFormats.Banner : AdFormats.SmartBanner;

                    setVisible(desc.Visible);
                    adView.ReceivedAd        += adView_ReceivedAd;
                    adView.FailedToReceiveAd += adView_FailedToReceiveAd;

                    WinRTPlugin.AdGrid.Children.Add(adView);

                    AdRequest request = new AdRequest();
                    //request.ForceTesting = desc.Testing;// Looks like there is a bug in AdMob if this is enabled.
                    adView.LoadAd(request);

                    Debug.Log("Created Ad of AdUnitID: " + adView.AdUnitID);
                }
                catch (Exception e)
                {
                    pass = false;
                    Debug.LogError(e.Message);
                }

                if (createdCallback != null)
                {
                    createdCallback(pass);
                }
            });
        }
Ejemplo n.º 13
0
		public DFP_AdPlugin_iOS(AdDesc desc, AdCreatedCallbackMethod createdCallback)
		{
			#if !IOS_DISABLE_GOOGLE_ADS
			bool pass = true;
			try
			{
				eventCallback = desc.EventCallback;
				native = DFP_InitAd(desc.Testing);
				int gravity = convertGravity(desc.iOS_DFP_AdGravity);

				DFP_CreateAd(native, gravity, convertAdSize(desc.iOS_DFP_AdSize), desc.iOS_DFP_UnitID);
				Visible = desc.Visible;
			}
			catch (Exception e)
			{
				Debug.LogError(e.Message);
				pass = false;
			}

			if (createdCallback != null) createdCallback(pass);
			#endif
		}
Ejemplo n.º 14
0
		public AdMob_AdPlugin_Native(AdDesc desc, AdCreatedCallbackMethod createdCallback)
		{
			eventCallback = desc.EventCallback;
			testing = desc.Testing;

			WinRTPlugin.Dispatcher.BeginInvoke(delegate()
			{
				bool pass = true;
				try
				{
					adView = new AdView();
					setGravity(desc.WP8_AdMob_AdGravity);

					adView.AdUnitID = desc.WP8_AdMob_UnitID;
					adView.Format = desc.WP8_AdMob_AdSize == WP8_AdMob_AdSize.Banner ? AdFormats.Banner : AdFormats.SmartBanner;

					setVisible(desc.Visible);
					adView.ReceivedAd += adView_ReceivedAd;
					adView.FailedToReceiveAd += adView_FailedToReceiveAd;

					WinRTPlugin.AdGrid.Children.Add(adView);

					AdRequest request = new AdRequest();
					//request.ForceTesting = desc.Testing;// Looks like there is a bug in AdMob if this is enabled.
					adView.LoadAd(request);

					Debug.Log("Created Ad of AdUnitID: " + adView.AdUnitID);
				}
				catch (Exception e)
				{
					pass = false;
					Debug.LogError(e.Message);
				}

				if (createdCallback != null) createdCallback(pass);
			});
		}
Ejemplo n.º 15
0
        public AdMob_AdPlugin_iOS(AdDesc desc, AdCreatedCallbackMethod createdCallback)
        {
            bool pass = true;

            try
            {
                eventCallback = desc.EventCallback;
                native        = AdMob_InitAd(desc.Testing);
                int gravity = convertGravity(desc.iOS_AdMob_AdGravity);

                AdMob_CreateAd(native, gravity, convertAdSize(desc.iOS_AdMob_AdSize), desc.iOS_AdMob_UnitID);
                Visible = desc.Visible;
            }
            catch (Exception e)
            {
                Debug.LogError(e.Message);
                pass = false;
            }

            if (createdCallback != null)
            {
                createdCallback(pass);
            }
        }
Ejemplo n.º 16
0
        private IEnumerator asyncRefresh(AdCreatedCallbackMethod createdCallback)
        {
            if (!Visible)
            {
                yield break;
            }

            string url = "http://ads.mp.mydas.mobi/getAd?";

            url += "&apid=" + apid;            // ID
            url += "&auid=" + deviceID;        // Device UID Hash HEX value
            url += "&ua=" + userAgent;
            url += "&uip=" + externalIP;
            Debug.Log("Ad Request URL: " + url);
            var www = new WWW(url);

            yield return(www);

            if (!string.IsNullOrEmpty(www.error))
            {
                Debug.LogError(www.error);
                if (createdCallback != null)
                {
                    createdCallback(false);
                }
                else if (adEvent != null)
                {
                    adEvent(AdEvents.Error, www.error);
                }
                yield break;
            }

            if (www.text.Contains(@"""error"""))
            {
                Debug.LogError(www.text);
                if (createdCallback != null)
                {
                    createdCallback(false);
                }
                else if (adEvent != null)
                {
                    adEvent(AdEvents.Error, www.text);
                }
                yield break;
            }

            //Debug.Log("Request Text: " + www.text);
            if (string.IsNullOrEmpty(www.text))
            {
                string error = "Invalid server responce! No data!";
                Debug.LogError(error);
                if (createdCallback != null)
                {
                    createdCallback(false);
                }
                else if (adEvent != null)
                {
                    adEvent(AdEvents.Error, error);
                }
                yield break;
            }

            try
            {
                var xml = new XmlSerializer(typeof(Reign.MM_AdXML.Ad));
                                #if UNITY_WINRT
                var str = System.Text.Reign.Encoding.Singleton.GetString(www.bytes, 0, www.bytes.Length).Replace(@"[:_mm_campaignid:]&[:_mm_advertiserid:]?", "");
                                #else
                var str = System.Text.Encoding.Default.GetString(www.bytes).Replace(@"[:_mm_campaignid:]&[:_mm_advertiserid:]?", "");
                                #endif
                using (var stream = new MemoryStream(System.Text.Encoding.UTF8.GetBytes(str)))
                {
                    adMeta = (Reign.MM_AdXML.Ad)xml.Deserialize(stream);
                }
            }
            catch (Exception e)
            {
                Debug.LogError(e.Message);
                Debug.LogError("Responce Text: " + www.text);
                if (adEvent != null)
                {
                    adEvent(AdEvents.Error, e.Message);
                }
                yield break;
            }

            string imageURL = adMeta.image.url.Content;
            Debug.Log("MMWeb Ad ImageURL: " + imageURL);
            www = new WWW(imageURL);
            yield return(www);

            if (gifImage != null)
            {
                gifImage.Dispose();
                gifImage = null;
            }
            gifImage = new TextureGIF(www.bytes, frameUpdatedCallback);
            if (desc.UseClassicGUI)
            {
                guiTexture = gifImage.CurrentFrame.Texture;
            }
            else
            {
                adImage.sprite = gifImage.CurrentFrame.Sprite;
            }
            var texture = gifImage.CurrentFrame.Texture;
            Debug.Log(string.Format("Ad Image Size: {0}x{1}", texture.width, texture.height));

            SetGravity(gravity);
            if (adEvent != null)
            {
                adEvent(AdEvents.Refreshed, null);
            }
        }
Ejemplo n.º 17
0
        private IEnumerator init(AdCreatedCallbackMethod createdCallback)
        {
            // request Ad
            if (testing)
            {
                var www = new WWW("http://media.mydas.mobi/images/rich/T/test_mm/collapsed.gif");
                yield return(www);

                var data = www.bytes;
                if (data == null || data.Length == 0)
                {
                    Debug.LogError("Test Ad failed to loadb");
                    if (createdCallback != null)
                    {
                        createdCallback(false);
                    }
                    yield break;
                }

                gifImage = new TextureGIF(data, frameUpdatedCallback);
                if (desc.UseClassicGUI)
                {
                    guiTexture = gifImage.CurrentFrame.Texture;
                }
                else
                {
                    adImage.sprite = gifImage.CurrentFrame.Sprite;
                }
                SetGravity(gravity);
                var texture = gifImage.CurrentFrame.Texture;
                Debug.Log(string.Format("Ad Image Size: {0}x{1}", texture.width, texture.height));
                if (createdCallback != null)
                {
                    createdCallback(true);
                }
                if (adEvent != null)
                {
                    adEvent(AdEvents.Refreshed, null);
                }
            }
            else
            {
                // get external IP address
                var ipWWW = new WWW("http://checkip.dyndns.org/");
                yield return(ipWWW);

                var match = Regex.Match(ipWWW.text, @"Current IP Address\: (\d*\.\d*\.\d*\.\d*)");
                if (!match.Success)
                {
                    if (createdCallback != null)
                    {
                        createdCallback(false);
                    }
                    yield break;
                }
                externalIP = match.Groups[1].Value;
                Debug.Log("External IP: " + externalIP);

                // load ad
                service.StartCoroutine(asyncRefresh(createdCallback));
            }
        }
Ejemplo n.º 18
0
        public MM_AdPlugin(AdDesc desc, AdCreatedCallbackMethod createdCallback, MonoBehaviour service)
        {
            this.service = service;

            try
            {
                this.desc = desc;
                testing   = desc.Testing;
                adEvent   = desc.EventCallback;

                gravity = AdGravity.CenterScreen;
                                #if !DISABLE_REIGN
                                #if UNITY_EDITOR
                refreshRate = desc.Editor_MillennialMediaAdvertising_RefreshRate;
                apid        = desc.Editor_MillennialMediaAdvertising_APID;
                userAgent   = "";
                gravity     = desc.Editor_MillennialMediaAdvertising_AdGravity;
                uiScale     = desc.Editor_AdScale;
                                #elif UNITY_BLACKBERRY
                refreshRate = desc.BB10_MillennialMediaAdvertising_RefreshRate;
                apid        = desc.BB10_MillennialMediaAdvertising_APID;

                IntPtr handle = IntPtr.Zero;
                if (Common.deviceinfo_get_details(ref handle) != 0)
                {
                    throw new Exception("Failed: deviceinfo_get_details");
                }
                string deviceType = Common.deviceinfo_details_get_keyboard(handle) == 0 ? "Touch" : "Kbd";
                Common.deviceinfo_free_details(ref handle);
                string osVersion = System.Text.RegularExpressions.Regex.Match(SystemInfo.operatingSystem, @"\d*\.\d*\.\d*\.\d*").Groups[0].Value;
                userAgent = WWW.EscapeURL("Mozilla/5.0 (BB10; " + deviceType + ") AppleWebKit/537.10+ (KHTML, like Gecko) Version/" + osVersion + " Mobile Safari/537.10+");

                gravity = desc.BB10_MillennialMediaAdvertising_AdGravity;
                uiScale = desc.BB10_AdScale;
                                #elif UNITY_WP8
                refreshRate = desc.WP8_MillennialMediaAdvertising_RefreshRate;
                apid        = desc.WP8_MillennialMediaAdvertising_APID;
                userAgent   = "";
                gravity     = desc.WP8_MillennialMediaAdvertising_AdGravity;
                uiScale     = desc.WP8_AdScale;
                                #elif UNITY_METRO
                refreshRate = desc.WinRT_MillennialMediaAdvertising_RefreshRate;
                apid        = desc.WinRT_MillennialMediaAdvertising_APID;
                userAgent   = "";
                gravity     = desc.WinRT_MillennialMediaAdvertising_AdGravity;
                uiScale     = desc.WinRT_AdScale;
                                #elif UNITY_IOS
                refreshRate = desc.iOS_MillennialMediaAdvertising_RefreshRate;
                apid        = desc.iOS_MillennialMediaAdvertising_APID;
                userAgent   = "";
                gravity     = desc.iOS_MillennialMediaAdvertising_AdGravity;
                uiScale     = desc.iOS_AdScale;
                                #elif UNITY_ANDROID
                refreshRate = desc.Android_MillennialMediaAdvertising_RefreshRate;
                apid        = desc.Android_MillennialMediaAdvertising_APID;
                userAgent   = "";
                gravity     = desc.Android_MillennialMediaAdvertising_AdGravity;
                uiScale     = desc.Android_AdScale;
                                #elif UNITY_STANDALONE_WIN
                refreshRate = desc.Win32_MillennialMediaAdvertising_RefreshRate;
                apid        = desc.Win32_MillennialMediaAdvertising_APID;
                userAgent   = "";
                gravity     = desc.Win32_MillennialMediaAdvertising_AdGravity;
                uiScale     = desc.Win32_AdScale;
                                #elif UNITY_STANDALONE_OSX
                refreshRate = desc.OSX_MillennialMediaAdvertising_RefreshRate;
                apid        = desc.OSX_MillennialMediaAdvertising_APID;
                userAgent   = "";
                gravity     = desc.OSX_MillennialMediaAdvertising_AdGravity;
                uiScale     = desc.OSX_AdScale;
                                #elif UNITY_STANDALONE_LINUX
                refreshRate = desc.Linux_MillennialMediaAdvertising_RefreshRate;
                apid        = desc.Linux_MillennialMediaAdvertising_APID;
                userAgent   = "";
                gravity     = desc.Linux_MillennialMediaAdvertising_AdGravity;
                uiScale     = desc.Linux_AdScale;
                                #endif
                                #endif

                // make sure ad refresh rate doesn't go under 1 min
                if (refreshRate < 60)
                {
                    refreshRate = 60;
                }

                // create or get device ID
                if (PlayerPrefs.HasKey("Reign_MMWebAds_DeviceID"))
                {
                    deviceID = PlayerPrefs.GetString("Reign_MMWebAds_DeviceID");
                }
                else
                {
                                        #if UNITY_EDITOR || UNITY_STANDALONE
                    var hash = new SHA1CryptoServiceProvider().ComputeHash(Guid.NewGuid().ToByteArray());
                    deviceID = BitConverter.ToString(hash).ToLower();
                                        #else
                    deviceID = Guid.NewGuid().ToString().Replace("-", "0").ToLower() + "0000";
                                        #endif

                    PlayerPrefs.SetString("Reign_MMWebAds_DeviceID", deviceID);
                }

                if (desc.UseClassicGUI)
                {
                    guiSytle = new GUIStyle()
                    {
                        stretchWidth  = true,
                        stretchHeight = true
                    };
                }
                else
                {
                    // Create Ad Canvas
                    adCanvas = new GameObject("MM Ad");
                    GameObject.DontDestroyOnLoad(adCanvas);
                    adCanvas.AddComponent <RectTransform>();
                    var canvas = adCanvas.AddComponent <Canvas>();
                    canvas.renderMode   = RenderMode.ScreenSpaceOverlay;
                    canvas.sortingOrder = 1000;
                    adCanvas.AddComponent <CanvasScaler>();
                    adCanvas.AddComponent <GraphicRaycaster>();

                    // Create ad
                    var ad = new GameObject("AdButtonImage");
                    ad.transform.parent = adCanvas.transform;
                    adRect                 = ad.AddComponent <RectTransform>();
                    adImage                = ad.AddComponent <Image>();
                    adImage.sprite         = Resources.Load <Sprite>("Reign/Ads/AdLoading");
                    adImage.preserveAspect = true;
                    var button = ad.AddComponent <Button>();
                    button.onClick.AddListener(adClicked);
                }

                // set default visible state
                Visible = desc.Visible;
                SetGravity(gravity);

                // load ad
                service.StartCoroutine(init(createdCallback));

                // set screen size changed callback
                ReignServices.ScreenSizeChangedCallback += ReignServices_ScreenSizeChangedCallback;
            }
            catch (Exception e)
            {
                Debug.LogError(e.Message);
                if (createdCallback != null)
                {
                    createdCallback(false);
                }
            }
        }
		public MicrosoftAdvertising_AdPlugin_Native(AdDesc desc, AdCreatedCallbackMethod createdCallback)
		{
			init(desc, createdCallback);
		}
		private async void init(AdDesc desc, AdCreatedCallbackMethod createdCallback)
		#endif
		{
			if (WinRTPlugin.AdGrid == null)
			{
				if (createdCallback != null) createdCallback(false);
				return;
			}

			#if WINDOWS_PHONE
			WinRTPlugin.Dispatcher.BeginInvoke(delegate()
			#else
			await WinRTPlugin.CoreWindow.Dispatcher.RunAsync(CoreDispatcherPriority.Normal, delegate()
			#endif
			{
				bool pass = true;
				try
				{
					adControl = new AdControl();
					#if WINDOWS_PHONE || UNITY_WP_8_1
					adControl.IsAutoRefreshEnabled = desc.WP8_MicrosoftAdvertising_UseBuiltInRefresh;
					if (!desc.WP8_MicrosoftAdvertising_UseBuiltInRefresh)
					{
						manualRefreshTimer = new DispatcherTimer();
						manualRefreshTimer.Interval = TimeSpan.FromSeconds(desc.WP8_MicrosoftAdvertising_RefreshRate);
						manualRefreshTimer.Tick += timer_Tick;
						manualRefreshTimer.Start();
					}

					adControl.IsEngagedChanged += adControl_IsEngagedChanged;
					adControl.AdRefreshed += adControl_AdRefreshed;
					#else
					adControl.IsAutoRefreshEnabled = desc.WinRT_MicrosoftAdvertising_UseBuiltInRefresh;
					if (!desc.WinRT_MicrosoftAdvertising_UseBuiltInRefresh)
					{
						manualRefreshTimer = new DispatcherTimer();
						manualRefreshTimer.Interval = TimeSpan.FromSeconds(desc.WinRT_MicrosoftAdvertising_RefreshRate);
						manualRefreshTimer.Tick += timer_Tick;
						manualRefreshTimer.Start();
					}

					adControl.IsEngagedChanged += adControl_IsEngagedChanged;
					adControl.AdRefreshed += adControl_AdRefreshed;
					#endif

					adControl.ErrorOccurred += adControl_ErrorOccurred;
					#if WINDOWS_PHONE
					adControl.SetValue(System.Windows.Controls.Canvas.ZIndexProperty, 98);
					#else
					adControl.SetValue(Windows.UI.Xaml.Controls.Canvas.ZIndexProperty, 98);
					#endif
			
					#if WINDOWS_PHONE || UNITY_WP_8_1
					adControl.ApplicationId = desc.Testing ? "test_client" : desc.WP8_MicrosoftAdvertising_ApplicationID;
					adControl.AdUnitId = desc.WP8_MicrosoftAdvertising_UnitID;
					switch (desc.WP8_MicrosoftAdvertising_AdSize)
					{
						case WP8_MicrosoftAdvertising_AdSize.Wide_640x100:
							adControl.Width = 640;
							adControl.Height = 100;
							if (desc.Testing) adControl.AdUnitId = "Image640_100";
							break;

						case WP8_MicrosoftAdvertising_AdSize.Wide_480x80:
							adControl.Width = 480;
							adControl.Height = 80;
							if (desc.Testing) adControl.AdUnitId = "Image480_80";
							break;

						case WP8_MicrosoftAdvertising_AdSize.Wide_320x50:
							adControl.Width = 320;
							adControl.Height = 50;
							if (desc.Testing) adControl.AdUnitId = "Image320_50";
							break;

						case WP8_MicrosoftAdvertising_AdSize.Wide_300x50:
							adControl.Width = 300;
							adControl.Height = 50;
							if (desc.Testing) adControl.AdUnitId = "Image300_50";
							break;

						default:
							Debug.LogError("AdPlugin: Unsuported Ad size");
							break;
					}
					#elif UNITY_METRO
					adControl.ApplicationId = desc.Testing ? "d25517cb-12d4-4699-8bdc-52040c712cab" : desc.WinRT_MicrosoftAdvertising_ApplicationID;
					adControl.AdUnitId = desc.WinRT_MicrosoftAdvertising_UnitID;
					switch (desc.WinRT_MicrosoftAdvertising_AdSize)
					{
						case WinRT_MicrosoftAdvertising_AdSize.Tall_160x600:
							adControl.Width = 160;
							adControl.Height = 600;
							if (desc.Testing) adControl.AdUnitId = "10043134";
							break;

						case WinRT_MicrosoftAdvertising_AdSize.Tall_300x600:
							adControl.Width = 300;
							adControl.Height = 600;
							if (desc.Testing) adControl.AdUnitId = "10043030";
							break;

						case WinRT_MicrosoftAdvertising_AdSize.Wide_300x250:
							adControl.Width = 300;
							adControl.Height = 250;
							if (desc.Testing) adControl.AdUnitId = "10043008";
							break;

						case WinRT_MicrosoftAdvertising_AdSize.Wide_728x90:
							adControl.Width = 728;
							adControl.Height = 90;
							if (desc.Testing) adControl.AdUnitId = "10042998";
							break;

						case WinRT_MicrosoftAdvertising_AdSize.Square_250x250:
							adControl.Width = 250;
							adControl.Height = 250;
							if (desc.Testing) adControl.AdUnitId = "10043105";
							break;

						default:
							Debug.LogError("AdPlugin: Unsuported Ad size");
							break;
					}
					#endif

					#if WINDOWS_PHONE || UNITY_WP_8_1
					setGravity(desc.WP8_MicrosoftAdvertising_AdGravity);
					#else
					setGravity(desc.WinRT_MicrosoftAdvertising_AdGravity);
					#endif
					
					eventCallback = desc.EventCallback;
					WinRTPlugin.AdGrid.Children.Add(adControl);
					setVisible(desc.Visible);
					Debug.Log("Created Ad of ApplicationID: " + adControl.ApplicationId + " AdUnitID" + adControl.AdUnitId);
				}
				catch (Exception e)
				{
					adControl = null;
					Debug.LogError(e.Message);
				}

				ReignServices.InvokeOnUnityThread(delegate
				{
					if (createdCallback != null) createdCallback(pass);
				});
			});
		}
Ejemplo n.º 21
0
		/// <summary>
		/// Use to create multiple Ads.
		/// </summary>
		/// <param name="descs">Your AdDesc settings.</param>
		/// <param name="createdCallback">The callback that fires when done.</param>
		/// <returns>Returns array of Ad objects</returns>
		public static Ad[] CreateAd(AdDesc[] descs, AdCreatedCallbackMethod createdCallback)
		{
			if (creatingAds)
			{
				Debug.LogError("You must wait for the last ads to finish being created!");
				if (createdCallback != null) createdCallback(false);
				return null;
			}
			creatingAds = true;
			AdManager.createdCallback = createdCallback;

			int startLength = plugins.Count;
			for (int i = 0; i != descs.Length; ++i) plugins.Add(AdPluginAPI.New(descs[i], async_CreatedCallback));
			
			var ads = new Ad[descs.Length];
			for (int i = 0, i2 = startLength; i != descs.Length; ++i, ++i2) ads[i] = new Ad(plugins[i2]);
			return ads;
		}
Ejemplo n.º 22
0
		/// <summary>
		/// Used by the Reign plugin.
		/// </summary>
		/// <param name="desc">The Ad desc.</param>
		/// <param name="callback">The callback fired when done.</param>
		/// <returns>Returns Ad interface</returns>
		public static IAdPlugin New(AdDesc desc, AdCreatedCallbackMethod callback)
		{
			#if DISABLE_REIGN
			return new Dumy_AdPlugin(desc, callback);
			#elif UNITY_EDITOR
			if (desc.Editor_AdAPI == AdAPIs.None) return new Dumy_AdPlugin(desc, callback);
			else if (desc.Editor_AdAPI == AdAPIs.EditorTestAd) return new AdPlugin(desc, callback);
			else if (desc.Editor_AdAPI == AdAPIs.MillennialMediaAdvertising) return new MM_AdPlugin(desc, callback, ReignServices.Singleton);
			else throw new Exception("Unsuported Editor_AdAPI: " + desc.Editor_AdAPI);
			#elif UNITY_WP8
			if (desc.WP8_AdAPI == AdAPIs.None) return new Dumy_AdPlugin(desc, callback);
			else if (desc.WP8_AdAPI == AdAPIs.MicrosoftAdvertising) return new MicrosoftAdvertising_AdPlugin_WinRT(desc, callback);
			else if (desc.WP8_AdAPI == AdAPIs.AdMob) return new AdMob_AdPlugin_WP8(desc, callback);
			else if (desc.WP8_AdAPI == AdAPIs.MillennialMediaAdvertising) return new MM_AdPlugin(desc, callback, ReignServices.Singleton);
			else throw new Exception("Unsuported WP8_AdAPI: " + desc.WP8_AdAPI);
			#elif UNITY_METRO
			if (desc.WinRT_AdAPI == AdAPIs.None) return new Dumy_AdPlugin(desc, callback);
			else if (desc.WinRT_AdAPI == AdAPIs.MicrosoftAdvertising) return new MicrosoftAdvertising_AdPlugin_WinRT(desc, callback);
			else if (desc.WinRT_AdAPI == AdAPIs.MillennialMediaAdvertising) return new MM_AdPlugin(desc, callback, ReignServices.Singleton);
			else if (desc.WinRT_AdAPI == AdAPIs.AdDuplex) return new AdDuplex_AdPlugin_WinRT(desc, callback);
			else throw new Exception("Unsuported WinRT_AdAPI: " + desc.WinRT_AdAPI);
			#elif UNITY_BLACKBERRY
			if (desc.BB10_AdAPI == AdAPIs.None) return new Dumy_AdPlugin(desc, callback);
			else if (desc.BB10_AdAPI == AdAPIs.MillennialMediaAdvertising) return new MM_AdPlugin(desc, callback, ReignServices.Singleton);
			else throw new Exception("Unsuported BB10_AdAPI: " + desc.BB10_AdAPI);
			#elif UNITY_IOS
			if (desc.iOS_AdAPI == AdAPIs.None) return new Dumy_AdPlugin(desc, callback);
			else if (desc.iOS_AdAPI == AdAPIs.iAd) return new iAd_AdPlugin_iOS(desc, callback);
			else if (desc.iOS_AdAPI == AdAPIs.AdMob) return new AdMob_AdPlugin_iOS(desc, callback);
			else if (desc.iOS_AdAPI == AdAPIs.DFP) return new DFP_AdPlugin_iOS(desc, callback);
			else if (desc.iOS_AdAPI == AdAPIs.MillennialMediaAdvertising) return new MM_AdPlugin(desc, callback, ReignServices.Singleton);
			else throw new Exception("Unsuported iOS_AdAPI: " + desc.iOS_AdAPI);
			#elif UNITY_ANDROID
			if (desc.Android_AdAPI == AdAPIs.None) return new Dumy_AdPlugin(desc, callback);
			else if (desc.Android_AdAPI == AdAPIs.AdMob) return new AdMob_AdPlugin_Android(desc, callback);
			else if (desc.Android_AdAPI == AdAPIs.DFP) return new DFP_AdPlugin_Android(desc, callback);
			else if (desc.Android_AdAPI == AdAPIs.Amazon) return new Amazon_AdPlugin_Android(desc, callback);
			else if (desc.Android_AdAPI == AdAPIs.MillennialMediaAdvertising) return new MM_AdPlugin(desc, callback, ReignServices.Singleton);
			else throw new Exception("Unsuported Android_AdAPI: " + desc.Android_AdAPI);
			#elif UNITY_STANDALONE_WIN
			if (desc.Win32_AdAPI == AdAPIs.None) return new Dumy_AdPlugin(desc, callback);
			else if (desc.Win32_AdAPI == AdAPIs.MillennialMediaAdvertising) return new MM_AdPlugin(desc, callback, ReignServices.Singleton);
			else throw new Exception("Unsuported Win32_AdAPI: " + desc.Win32_AdAPI);
			#elif UNITY_STANDALONE_OSX
			if (desc.OSX_AdAPI == AdAPIs.None) return new Dumy_AdPlugin(desc, callback);
			else if (desc.OSX_AdAPI == AdAPIs.MillennialMediaAdvertising) return new MM_AdPlugin(desc, callback, ReignServices.Singleton);
			else throw new Exception("Unsuported OSX_AdAPI: " + desc.OSX_AdAPI);
			#elif UNITY_STANDALONE_LINUX
			if (desc.Linux_AdAPI == AdAPIs.None) return new Dumy_AdPlugin(desc, callback);
			else if (desc.Linux_AdAPI == AdAPIs.MillennialMediaAdvertising) return new MM_AdPlugin(desc, callback, ReignServices.Singleton);
			else throw new Exception("Unsuported Linux_AdAPI: " + desc.Linux_AdAPI);
			#else
			return new Dumy_AdPlugin(desc, callback);
			#endif
		}
Ejemplo n.º 23
0
 public AdDuplex_AdPlugin_WinRT(AdDesc desc, AdCreatedCallbackMethod createdCallback)
 {
     InitNative(this, desc, createdCallback);
 }
Ejemplo n.º 24
0
 public AdDuplex_AdPlugin_Native(AdDesc desc, AdCreatedCallbackMethod createdCallback)
 {
     init(desc, createdCallback);
 }
		public AdDuplex_AdPlugin_Native(AdDesc desc, AdCreatedCallbackMethod createdCallback)
		{
			init(desc, createdCallback);
		}
		private async void init(AdDesc desc, AdCreatedCallbackMethod createdCallback)
		{
			if (WinRTPlugin.AdGrid == null)
			{
				if (createdCallback != null) createdCallback(false);
				return;
			}

			await WinRTPlugin.CoreWindow.Dispatcher.RunAsync(CoreDispatcherPriority.Normal, delegate()
			{
				bool pass = true;
				try
				{
					adControl = new AdControl();
					adControl.AdClick += adControl_Clicked;
					adControl.AdLoaded += adControl_AdRefreshed;
					adControl.AdLoadingError += adControl_ErrorOccurred;
					adControl.AdCovered += adControl_AdCovered;
					adControl.NoAd += adControl_NoAd;
					adControl.IsTest = desc.Testing;
					adControl.CollapseOnError = true;

					adControl.SetValue(Windows.UI.Xaml.Controls.Canvas.ZIndexProperty, 98);
			
					#if UNITY_WP_8_1
					adControl.RefreshInterval = desc.WP8_AdDuplex_RefreshRate;
					adControl.AppKey = desc.WP8_AdDuplex_ApplicationKey;
					adControl.AdUnitId = desc.WP8_AdDuplex_UnitID;
					#else
					adControl.RefreshInterval = desc.WinRT_AdDuplex_RefreshRate;
					adControl.AppKey = desc.WinRT_AdDuplex_ApplicationKey;
					adControl.AdUnitId = desc.WinRT_AdDuplex_UnitID;
					switch (desc.WinRT_AdDuplex_AdSize)
					{
						case WinRT_AdDuplex_AdSize.Tall_160x600:
							adControl.Size = "160x600";
							break;

						case WinRT_AdDuplex_AdSize.Wide_250x125:
							adControl.Size = "250x125";
							break;

						case WinRT_AdDuplex_AdSize.Wide_292x60:
							adControl.Size = "292x60";
							break;

						case WinRT_AdDuplex_AdSize.Wide_300x250:
							adControl.Size = "300x250";
							break;

						case WinRT_AdDuplex_AdSize.Wide_500x130:
							adControl.Size = "500x130";
							break;

						case WinRT_AdDuplex_AdSize.Wide_728x90:
							adControl.Size = "728x90";
							break;

						case WinRT_AdDuplex_AdSize.Square_250x250:
							adControl.Size = "250x250";
							break;

						default:
							Debug.LogError("AdPlugin: Unsuported Ad size");
							break;
					}
					#endif

					#if UNITY_WP_8_1
					setGravity(desc.WP8_AdDuplex_AdGravity);
					#else
					setGravity(desc.WinRT_AdDuplex_AdGravity);
					#endif
					
					eventCallback = desc.EventCallback;
					WinRTPlugin.AdGrid.Children.Add(adControl);
					setVisible(desc.Visible);
					Debug.Log("Created Ad of AppKey: " + adControl.AppKey + " AdUnitID" + adControl.AdUnitId);
				}
				catch (Exception e)
				{
					adControl = null;
					Debug.LogError(e.Message);
				}

				UnityEngine.WSA.Application.InvokeOnAppThread(()=>
				{
					if (createdCallback != null) createdCallback(pass);
				}, false);
			});
		}
		public AdDuplex_AdPlugin_WinRT(AdDesc desc, AdCreatedCallbackMethod createdCallback)
		{
			InitNative(this, desc, createdCallback);
		}
        private async void init(AdDesc desc, AdCreatedCallbackMethod createdCallback)
                #endif
        {
            if (WinRTPlugin.AdGrid == null)
            {
                if (createdCallback != null)
                {
                    createdCallback(false);
                }
                return;
            }

                        #if WINDOWS_PHONE
            WinRTPlugin.Dispatcher.BeginInvoke(delegate()
                        #else
            await WinRTPlugin.CoreWindow.Dispatcher.RunAsync(CoreDispatcherPriority.Normal, delegate()
                        #endif
            {
                bool pass = true;
                try
                {
                    adControl = new AdControl();
                                        #if WINDOWS_PHONE || UNITY_WP_8_1
                    adControl.IsAutoRefreshEnabled = desc.WP8_MicrosoftAdvertising_UseBuiltInRefresh;
                    if (!desc.WP8_MicrosoftAdvertising_UseBuiltInRefresh)
                    {
                        manualRefreshTimer          = new DispatcherTimer();
                        manualRefreshTimer.Interval = TimeSpan.FromSeconds(desc.WP8_MicrosoftAdvertising_RefreshRate);
                        manualRefreshTimer.Tick    += timer_Tick;
                        manualRefreshTimer.Start();
                    }

                    adControl.IsEngagedChanged += adControl_IsEngagedChanged;
                    adControl.AdRefreshed      += adControl_AdRefreshed;
                                        #else
                    adControl.IsAutoRefreshEnabled = desc.WinRT_MicrosoftAdvertising_UseBuiltInRefresh;
                    if (!desc.WinRT_MicrosoftAdvertising_UseBuiltInRefresh)
                    {
                        manualRefreshTimer          = new DispatcherTimer();
                        manualRefreshTimer.Interval = TimeSpan.FromSeconds(desc.WinRT_MicrosoftAdvertising_RefreshRate);
                        manualRefreshTimer.Tick    += timer_Tick;
                        manualRefreshTimer.Start();
                    }

                    adControl.IsEngagedChanged += adControl_IsEngagedChanged;
                    adControl.AdRefreshed      += adControl_AdRefreshed;
                                        #endif

                    adControl.ErrorOccurred += adControl_ErrorOccurred;
                                        #if WINDOWS_PHONE
                    adControl.SetValue(System.Windows.Controls.Canvas.ZIndexProperty, 98);
                                        #else
                    adControl.SetValue(Windows.UI.Xaml.Controls.Canvas.ZIndexProperty, 98);
                                        #endif

                                        #if WINDOWS_PHONE || UNITY_WP_8_1
                    adControl.ApplicationId = desc.Testing ? "test_client" : desc.WP8_MicrosoftAdvertising_ApplicationID;
                    adControl.AdUnitId      = desc.WP8_MicrosoftAdvertising_UnitID;
                    switch (desc.WP8_MicrosoftAdvertising_AdSize)
                    {
                    case WP8_MicrosoftAdvertising_AdSize.Wide_640x100:
                        adControl.Width  = 640;
                        adControl.Height = 100;
                        if (desc.Testing)
                        {
                            adControl.AdUnitId = "Image640_100";
                        }
                        break;

                    case WP8_MicrosoftAdvertising_AdSize.Wide_480x80:
                        adControl.Width  = 480;
                        adControl.Height = 80;
                        if (desc.Testing)
                        {
                            adControl.AdUnitId = "Image480_80";
                        }
                        break;

                    case WP8_MicrosoftAdvertising_AdSize.Wide_320x50:
                        adControl.Width  = 320;
                        adControl.Height = 50;
                        if (desc.Testing)
                        {
                            adControl.AdUnitId = "Image320_50";
                        }
                        break;

                    case WP8_MicrosoftAdvertising_AdSize.Wide_300x50:
                        adControl.Width  = 300;
                        adControl.Height = 50;
                        if (desc.Testing)
                        {
                            adControl.AdUnitId = "Image300_50";
                        }
                        break;

                    default:
                        Debug.LogError("AdPlugin: Unsuported Ad size");
                        break;
                    }
                                        #elif UNITY_METRO
                    adControl.ApplicationId = desc.Testing ? "d25517cb-12d4-4699-8bdc-52040c712cab" : desc.WinRT_MicrosoftAdvertising_ApplicationID;
                    adControl.AdUnitId      = desc.WinRT_MicrosoftAdvertising_UnitID;
                    switch (desc.WinRT_MicrosoftAdvertising_AdSize)
                    {
                    case WinRT_MicrosoftAdvertising_AdSize.Tall_160x600:
                        adControl.Width  = 160;
                        adControl.Height = 600;
                        if (desc.Testing)
                        {
                            adControl.AdUnitId = "10043134";
                        }
                        break;

                    case WinRT_MicrosoftAdvertising_AdSize.Tall_300x600:
                        adControl.Width  = 300;
                        adControl.Height = 600;
                        if (desc.Testing)
                        {
                            adControl.AdUnitId = "10043030";
                        }
                        break;

                    case WinRT_MicrosoftAdvertising_AdSize.Wide_300x250:
                        adControl.Width  = 300;
                        adControl.Height = 250;
                        if (desc.Testing)
                        {
                            adControl.AdUnitId = "10043008";
                        }
                        break;

                    case WinRT_MicrosoftAdvertising_AdSize.Wide_728x90:
                        adControl.Width  = 728;
                        adControl.Height = 90;
                        if (desc.Testing)
                        {
                            adControl.AdUnitId = "10042998";
                        }
                        break;

                    case WinRT_MicrosoftAdvertising_AdSize.Square_250x250:
                        adControl.Width  = 250;
                        adControl.Height = 250;
                        if (desc.Testing)
                        {
                            adControl.AdUnitId = "10043105";
                        }
                        break;

                    default:
                        Debug.LogError("AdPlugin: Unsuported Ad size");
                        break;
                    }
                                        #endif

                                        #if WINDOWS_PHONE || UNITY_WP_8_1
                    setGravity(desc.WP8_MicrosoftAdvertising_AdGravity);
                                        #else
                    setGravity(desc.WinRT_MicrosoftAdvertising_AdGravity);
                                        #endif

                    eventCallback = desc.EventCallback;
                    WinRTPlugin.AdGrid.Children.Add(adControl);
                    setVisible(desc.Visible);
                    Debug.Log("Created Ad of ApplicationID: " + adControl.ApplicationId + " AdUnitID" + adControl.AdUnitId);
                }
                catch (Exception e)
                {
                    adControl = null;
                    Debug.LogError(e.Message);
                }

                ReignServices.InvokeOnUnityThread(delegate
                {
                    if (createdCallback != null)
                    {
                        createdCallback(pass);
                    }
                });
            });
        }
 private void init(AdDesc desc, AdCreatedCallbackMethod createdCallback)
Ejemplo n.º 30
0
 /// <summary>
 /// Used by the Reign plugin.
 /// </summary>
 /// <param name="desc">The Ad desc.</param>
 /// <param name="callback">The callback fired when done.</param>
 /// <returns>Returns Ad interface</returns>
 public static IAdPlugin New(AdDesc desc, AdCreatedCallbackMethod callback)
 {
                 #if DISABLE_REIGN
     return(new Dumy_AdPlugin(desc, callback));
                 #elif UNITY_EDITOR
     if (desc.Editor_AdAPI == AdAPIs.None)
     {
         return(new Dumy_AdPlugin(desc, callback));
     }
     else if (desc.Editor_AdAPI == AdAPIs.EditorTestAd)
     {
         return(new AdPlugin(desc, callback));
     }
     else if (desc.Editor_AdAPI == AdAPIs.MillennialMediaAdvertising)
     {
         return(new MM_AdPlugin(desc, callback, ReignServices.Singleton));
     }
     else
     {
         throw new Exception("Unsuported Editor_AdAPI: " + desc.Editor_AdAPI);
     }
                 #elif UNITY_WP8
     if (desc.WP8_AdAPI == AdAPIs.None)
     {
         return(new Dumy_AdPlugin(desc, callback));
     }
     else if (desc.WP8_AdAPI == AdAPIs.MicrosoftAdvertising)
     {
         return(new MicrosoftAdvertising_AdPlugin_WinRT(desc, callback));
     }
     else if (desc.WP8_AdAPI == AdAPIs.AdMob)
     {
         return(new AdMob_AdPlugin_WP8(desc, callback));
     }
     else if (desc.WP8_AdAPI == AdAPIs.MillennialMediaAdvertising)
     {
         return(new MM_AdPlugin(desc, callback, ReignServices.Singleton));
     }
     else
     {
         throw new Exception("Unsuported WP8_AdAPI: " + desc.WP8_AdAPI);
     }
                 #elif UNITY_METRO
     if (desc.WinRT_AdAPI == AdAPIs.None)
     {
         return(new Dumy_AdPlugin(desc, callback));
     }
     else if (desc.WinRT_AdAPI == AdAPIs.MicrosoftAdvertising)
     {
         return(new MicrosoftAdvertising_AdPlugin_WinRT(desc, callback));
     }
     else if (desc.WinRT_AdAPI == AdAPIs.MillennialMediaAdvertising)
     {
         return(new MM_AdPlugin(desc, callback, ReignServices.Singleton));
     }
     else
     {
         throw new Exception("Unsuported WinRT_AdAPI: " + desc.WinRT_AdAPI);
     }
                 #elif UNITY_BLACKBERRY
     if (desc.BB10_AdAPI == AdAPIs.None)
     {
         return(new Dumy_AdPlugin(desc, callback));
     }
     else if (desc.BB10_AdAPI == AdAPIs.MillennialMediaAdvertising)
     {
         return(new MM_AdPlugin(desc, callback, ReignServices.Singleton));
     }
     else
     {
         throw new Exception("Unsuported BB10_AdAPI: " + desc.BB10_AdAPI);
     }
                 #elif UNITY_IOS
     if (desc.iOS_AdAPI == AdAPIs.None)
     {
         return(new Dumy_AdPlugin(desc, callback));
     }
     else if (desc.iOS_AdAPI == AdAPIs.iAd)
     {
         return(new iAd_AdPlugin_iOS(desc, callback));
     }
     else if (desc.iOS_AdAPI == AdAPIs.AdMob)
     {
         return(new AdMob_AdPlugin_iOS(desc, callback));
     }
     else if (desc.iOS_AdAPI == AdAPIs.DFP)
     {
         return(new DFP_AdPlugin_iOS(desc, callback));
     }
     else if (desc.iOS_AdAPI == AdAPIs.MillennialMediaAdvertising)
     {
         return(new MM_AdPlugin(desc, callback, ReignServices.Singleton));
     }
     else
     {
         throw new Exception("Unsuported iOS_AdAPI: " + desc.iOS_AdAPI);
     }
                 #elif UNITY_ANDROID
     if (desc.Android_AdAPI == AdAPIs.None)
     {
         return(new Dumy_AdPlugin(desc, callback));
     }
     else if (desc.Android_AdAPI == AdAPIs.AdMob)
     {
         return(new AdMob_AdPlugin_Android(desc, callback));
     }
     else if (desc.Android_AdAPI == AdAPIs.DFP)
     {
         return(new DFP_AdPlugin_Android(desc, callback));
     }
     else if (desc.Android_AdAPI == AdAPIs.Amazon)
     {
         return(new Amazon_AdPlugin_Android(desc, callback));
     }
     else if (desc.Android_AdAPI == AdAPIs.MillennialMediaAdvertising)
     {
         return(new MM_AdPlugin(desc, callback, ReignServices.Singleton));
     }
     else
     {
         throw new Exception("Unsuported Android_AdAPI: " + desc.Android_AdAPI);
     }
                 #elif UNITY_STANDALONE_WIN
     if (desc.Win32_AdAPI == AdAPIs.None)
     {
         return(new Dumy_AdPlugin(desc, callback));
     }
     else if (desc.Win32_AdAPI == AdAPIs.MillennialMediaAdvertising)
     {
         return(new MM_AdPlugin(desc, callback, ReignServices.Singleton));
     }
     else
     {
         throw new Exception("Unsuported Win32_AdAPI: " + desc.Win32_AdAPI);
     }
                 #elif UNITY_STANDALONE_OSX
     if (desc.OSX_AdAPI == AdAPIs.None)
     {
         return(new Dumy_AdPlugin(desc, callback));
     }
     else if (desc.OSX_AdAPI == AdAPIs.MillennialMediaAdvertising)
     {
         return(new MM_AdPlugin(desc, callback, ReignServices.Singleton));
     }
     else
     {
         throw new Exception("Unsuported OSX_AdAPI: " + desc.OSX_AdAPI);
     }
                 #elif UNITY_STANDALONE_LINUX
     if (desc.Linux_AdAPI == AdAPIs.None)
     {
         return(new Dumy_AdPlugin(desc, callback));
     }
     else if (desc.Linux_AdAPI == AdAPIs.MillennialMediaAdvertising)
     {
         return(new MM_AdPlugin(desc, callback, ReignServices.Singleton));
     }
     else
     {
         throw new Exception("Unsuported Linux_AdAPI: " + desc.Linux_AdAPI);
     }
                 #else
     return(new Dumy_AdPlugin(desc, callback));
                 #endif
 }
Ejemplo n.º 31
0
		public AdMob_AdPlugin_WP8(AdDesc desc, AdCreatedCallbackMethod createdCallback)
		{
			InitNative(this, desc, createdCallback);
		}
 public MicrosoftAdvertising_AdPlugin_Native(AdDesc desc, AdCreatedCallbackMethod createdCallback)
 {
     init(desc, createdCallback);
 }
Ejemplo n.º 33
0
 private static void init_MicrosoftAdvertising_AdPlugin(MicrosoftAdvertising_AdPlugin_WinRT plugin, AdDesc desc, AdCreatedCallbackMethod createdCallback)
 {
     plugin.Native = new MicrosoftAdvertising_AdPlugin_Native(desc, createdCallback);
 }
Ejemplo n.º 34
0
		/// <summary>
		/// Dumy constructor.
		/// </summary>
		/// <param name="desc"></param>
		/// <param name="createdCallback"></param>
		public Dumy_AdPlugin(AdDesc desc, AdCreatedCallbackMethod createdCallback)
		{
			Visible = desc.Visible;
			if (createdCallback != null) createdCallback(true);
		}
Ejemplo n.º 35
0
		private IEnumerator asyncRefresh(AdCreatedCallbackMethod createdCallback)
		{
			if (!Visible) yield break;

			string url = "http://ads.mp.mydas.mobi/getAd?";
			url += "&apid=" + apid;// ID
			url += "&auid=" + deviceID;// Device UID Hash HEX value
			url += "&ua=" + userAgent;
			url += "&uip=" + externalIP;
			Debug.Log("Ad Request URL: " + url);
			var www = new WWW(url);
			yield return www;

			if (!string.IsNullOrEmpty(www.error))
			{
				Debug.LogError(www.error);
				if (createdCallback != null) createdCallback(false);
				else if (adEvent != null) adEvent(AdEvents.Error, www.error);
				yield break;
			}

			if (www.text.Contains(@"""error"""))
			{
				Debug.LogError(www.text);
				if (createdCallback != null) createdCallback(false);
				else if (adEvent != null) adEvent(AdEvents.Error, www.text);
				yield break;
			}

			//Debug.Log("Request Text: " + www.text);
			if (string.IsNullOrEmpty(www.text))
			{
				string error = "Invalid server responce! No data!";
				Debug.LogError(error);
				if (createdCallback != null) createdCallback(false);
				else if (adEvent != null) adEvent(AdEvents.Error, error);
				yield break;
			}

			try
			{
				var xml = new XmlSerializer(typeof(Reign.MM_AdXML.Ad));
				#if UNITY_WINRT
				var str = System.Text.Reign.Encoding.Singleton.GetString(www.bytes, 0, www.bytes.Length).Replace(@"[:_mm_campaignid:]&[:_mm_advertiserid:]?", "");
				#else
				var str = System.Text.Encoding.Default.GetString(www.bytes).Replace(@"[:_mm_campaignid:]&[:_mm_advertiserid:]?", "");
				#endif
				using (var stream = new MemoryStream(System.Text.Encoding.UTF8.GetBytes(str)))
				{
					adMeta = (Reign.MM_AdXML.Ad)xml.Deserialize(stream);
				}
			}
			catch (Exception e)
			{
				Debug.LogError(e.Message);
				Debug.LogError("Responce Text: " + www.text);
				if (adEvent != null) adEvent(AdEvents.Error, e.Message);
				yield break;
			}

			string imageURL = adMeta.image.url.Content;
			Debug.Log("MMWeb Ad ImageURL: " + imageURL);
			www = new WWW(imageURL);
			yield return www;

			if (gifImage != null)
			{
				gifImage.Dispose();
				gifImage = null;
			}
			gifImage = new TextureGIF(www.bytes, frameUpdatedCallback);
			if (desc.UseClassicGUI) guiTexture = gifImage.CurrentFrame.Texture;
			else adImage.sprite = gifImage.CurrentFrame.Sprite;
			var texture = gifImage.CurrentFrame.Texture;
			Debug.Log(string.Format("Ad Image Size: {0}x{1}", texture.width, texture.height));

			SetGravity(gravity);
			if (adEvent != null) adEvent(AdEvents.Refreshed, null);
		}
		public MicrosoftAdvertising_AdPlugin_WinRT(AdDesc desc, AdCreatedCallbackMethod createdCallback)
		{
			InitNative(this, desc, createdCallback);
		}
Ejemplo n.º 37
0
		private static void init_AdMob_AdPlugin(AdMob_AdPlugin_WP8 plugin, AdDesc desc, AdCreatedCallbackMethod createdCallback)
		{
			#if !WINRT_DISABLE_GOOGLE_ADS
			plugin.Native = new AdMob_AdPlugin_Native(desc, createdCallback);
			#endif
		}
		private void init(AdDesc desc, AdCreatedCallbackMethod createdCallback)
Ejemplo n.º 39
0
 private static void init_AdMob_AdPlugin(AdMob_AdPlugin_WP8 plugin, AdDesc desc, AdCreatedCallbackMethod createdCallback)
 {
                 #if !WINRT_DISABLE_GOOGLE_ADS
     plugin.Native = new AdMob_AdPlugin_Native(desc, createdCallback);
                 #endif
 }
Ejemplo n.º 40
0
		private static void init_MicrosoftAdvertising_AdPlugin(MicrosoftAdvertising_AdPlugin_WinRT plugin, AdDesc desc, AdCreatedCallbackMethod createdCallback)
		{
			plugin.Native = new MicrosoftAdvertising_AdPlugin_Native(desc, createdCallback);
		}
Ejemplo n.º 41
0
 private static void init_AdDuplex_AdPlugin(AdDuplex_AdPlugin_WinRT plugin, AdDesc desc, AdCreatedCallbackMethod createdCallback)
 {
                 #if !WINRT_DISABLE_ADDUPLEX_ADS
     plugin.Native = new AdDuplex_AdPlugin_Native(desc, createdCallback);
                 #endif
 }
Ejemplo n.º 42
0
        private IEnumerator asyncRefresh(AdCreatedCallbackMethod createdCallback)
        {
            if (!Visible)
            {
                yield break;
            }

            string url = "http://ads.mp.mydas.mobi/getAd?";

            url += "&apid=" + apid;            // ID
            url += "&auid=" + deviceID;        // Device UID Hash HEX value
            url += "&ua=" + userAgent;
            url += "&uip=" + externalIP;
            Debug.Log("Ad Request URL: " + url);
            var www = new WWW(url);

            yield return(www);

            if (!string.IsNullOrEmpty(www.error))
            {
                Debug.LogError(www.error);
                if (createdCallback != null)
                {
                    createdCallback(false);
                }
                else if (adEvent != null)
                {
                    adEvent(AdEvents.Error, www.error);
                }
                yield break;
            }

            if (www.text.Contains(@"""error"""))
            {
                Debug.LogError(www.text);
                if (createdCallback != null)
                {
                    createdCallback(false);
                }
                else if (adEvent != null)
                {
                    adEvent(AdEvents.Error, www.text);
                }
                yield break;
            }

            //Debug.Log("Request Text: " + www.text);
            if (string.IsNullOrEmpty(www.text))
            {
                string error = "Invalid server responce! No data!";
                Debug.LogError(error);
                if (createdCallback != null)
                {
                    createdCallback(false);
                }
                else if (adEvent != null)
                {
                    adEvent(AdEvents.Error, error);
                }
                yield break;
            }

            var xml = new XmlSerializer(typeof(Reign.MM_AdXML.Ad));

            using (var data = new MemoryStream(www.bytes))
            {
                adMeta = (Reign.MM_AdXML.Ad)xml.Deserialize(data);
            }

            string imageURL = adMeta.image.url.Content;

            Debug.Log("MMWeb Ad ImageURL: " + imageURL);
            www = new WWW(imageURL);
            yield return(www);

            if (gifImage != null)
            {
                gifImage.Dispose();
                gifImage = null;
            }
            gifImage = new TextureGIF(www.bytes, frameUpdatedCallback);
            if (desc.UseClassicGUI)
            {
                guiTexture = gifImage.CurrentFrame.Texture;
            }
            else
            {
                adImage.sprite = gifImage.CurrentFrame.Sprite;
            }
            var texture = gifImage.CurrentFrame.Texture;

            Debug.Log(string.Format("Ad Image Size: {0}x{1}", texture.width, texture.height));

            SetGravity(gravity);
            if (adEvent != null)
            {
                adEvent(AdEvents.Refreshed, null);
            }
        }
Ejemplo n.º 43
0
 private static void init_MicrosoftAdvertising_AdPlugin(MicrosoftAdvertising_AdPlugin_WinRT plugin, AdDesc desc, AdCreatedCallbackMethod createdCallback)
 {
                 #if !WINRT_DISABLE_MS_ADS
     plugin.Native = new MicrosoftAdvertising_AdPlugin_Native(desc, createdCallback);
                 #endif
 }
Ejemplo n.º 44
0
 public AdMob_AdPlugin_WP8(AdDesc desc, AdCreatedCallbackMethod createdCallback)
 {
     InitNative(this, desc, createdCallback);
 }
Ejemplo n.º 45
0
		private static void init_AdMob_AdPlugin(AdMob_AdPlugin_WP8 plugin, AdDesc desc, AdCreatedCallbackMethod createdCallback)
		{
			plugin.Native = new AdMob_AdPlugin_Native(desc, createdCallback);
		}
Ejemplo n.º 46
0
		public MM_AdPlugin(AdDesc desc, AdCreatedCallbackMethod createdCallback, MonoBehaviour service)
		{
			this.service = service;

			try
			{
				this.desc = desc;
				testing = desc.Testing;
				adEvent = desc.EventCallback;

				gravity = AdGravity.CenterScreen;
				#if !DISABLE_REIGN
				#if UNITY_EDITOR
				refreshRate = desc.Editor_MillennialMediaAdvertising_RefreshRate;
				apid = desc.Editor_MillennialMediaAdvertising_APID;
				userAgent = "";
				gravity = desc.Editor_MillennialMediaAdvertising_AdGravity;
				uiScale = desc.Editor_AdScale;
				#elif UNITY_BLACKBERRY
				refreshRate = desc.BB10_MillennialMediaAdvertising_RefreshRate;
				apid = desc.BB10_MillennialMediaAdvertising_APID;

				IntPtr handle = IntPtr.Zero;
				if (Common.deviceinfo_get_details(ref handle) != 0) throw new Exception("Failed: deviceinfo_get_details");
				string deviceType = Common.deviceinfo_details_get_keyboard(handle) == 0 ? "Touch" : "Kbd";
				Common.deviceinfo_free_details(ref handle);
				string osVersion = System.Text.RegularExpressions.Regex.Match(SystemInfo.operatingSystem, @"\d*\.\d*\.\d*\.\d*").Groups[0].Value;
				userAgent = WWW.EscapeURL("Mozilla/5.0 (BB10; " + deviceType + ") AppleWebKit/537.10+ (KHTML, like Gecko) Version/" + osVersion + " Mobile Safari/537.10+");

				gravity = desc.BB10_MillennialMediaAdvertising_AdGravity;
				uiScale = desc.BB10_AdScale;
				#elif UNITY_WP8
				refreshRate = desc.WP8_MillennialMediaAdvertising_RefreshRate;
				apid = desc.WP8_MillennialMediaAdvertising_APID;
				userAgent = "";
				gravity = desc.WP8_MillennialMediaAdvertising_AdGravity;
				uiScale = desc.WP8_AdScale;
				#elif UNITY_METRO
				refreshRate = desc.WinRT_MillennialMediaAdvertising_RefreshRate;
				apid = desc.WinRT_MillennialMediaAdvertising_APID;
				userAgent = "";
				gravity = desc.WinRT_MillennialMediaAdvertising_AdGravity;
				uiScale = desc.WinRT_AdScale;
				#elif UNITY_IOS
				refreshRate = desc.iOS_MillennialMediaAdvertising_RefreshRate;
				apid = desc.iOS_MillennialMediaAdvertising_APID;
				userAgent = "";
				gravity = desc.iOS_MillennialMediaAdvertising_AdGravity;
				uiScale = desc.iOS_AdScale;
				#elif UNITY_ANDROID
				refreshRate = desc.Android_MillennialMediaAdvertising_RefreshRate;
				apid = desc.Android_MillennialMediaAdvertising_APID;
				userAgent = "";
				gravity = desc.Android_MillennialMediaAdvertising_AdGravity;
				uiScale = desc.Android_AdScale;
				#elif UNITY_STANDALONE_WIN
				refreshRate = desc.Win32_MillennialMediaAdvertising_RefreshRate;
				apid = desc.Win32_MillennialMediaAdvertising_APID;
				userAgent = "";
				gravity = desc.Win32_MillennialMediaAdvertising_AdGravity;
				uiScale = desc.Win32_AdScale;
				#elif UNITY_STANDALONE_OSX
				refreshRate = desc.OSX_MillennialMediaAdvertising_RefreshRate;
				apid = desc.OSX_MillennialMediaAdvertising_APID;
				userAgent = "";
				gravity = desc.OSX_MillennialMediaAdvertising_AdGravity;
				uiScale = desc.OSX_AdScale;
				#elif UNITY_STANDALONE_LINUX
				refreshRate = desc.Linux_MillennialMediaAdvertising_RefreshRate;
				apid = desc.Linux_MillennialMediaAdvertising_APID;
				userAgent = "";
				gravity = desc.Linux_MillennialMediaAdvertising_AdGravity;
				uiScale = desc.Linux_AdScale;
				#endif
				#endif

				// make sure ad refresh rate doesn't go under 1 min
				if (refreshRate < 60) refreshRate = 60;

				// create or get device ID
				if (PlayerPrefs.HasKey("Reign_MMWebAds_DeviceID"))
				{
					deviceID = PlayerPrefs.GetString("Reign_MMWebAds_DeviceID");
				}
				else
				{
					#if UNITY_EDITOR || UNITY_STANDALONE
					var hash = new SHA1CryptoServiceProvider().ComputeHash(Guid.NewGuid().ToByteArray());
					deviceID = BitConverter.ToString(hash).ToLower();
					#else
					deviceID = Guid.NewGuid().ToString().Replace("-", "0").ToLower() + "0000";
					#endif

					PlayerPrefs.SetString("Reign_MMWebAds_DeviceID", deviceID);
				}

				if (desc.UseClassicGUI)
				{
					guiSytle = new GUIStyle()
					{
						stretchWidth = true,
						stretchHeight = true
					};
				}
				else
				{
					// Create Ad Canvas
					adCanvas = new GameObject("MM Ad");
					GameObject.DontDestroyOnLoad(adCanvas);
					adCanvas.AddComponent<RectTransform>();
					var canvas = adCanvas.AddComponent<Canvas>();
					canvas.renderMode = RenderMode.ScreenSpaceOverlay;
					canvas.sortingOrder = 1000;
					adCanvas.AddComponent<CanvasScaler>();
					adCanvas.AddComponent<GraphicRaycaster>();

					// Create ad
					var ad = new GameObject("AdButtonImage");
					ad.transform.parent = adCanvas.transform;
					adRect = ad.AddComponent<RectTransform>();
					adImage = ad.AddComponent<Image>();
					adImage.sprite = Resources.Load<Sprite>("Reign/Ads/AdLoading");
					adImage.preserveAspect = true;
					var button = ad.AddComponent<Button>();
					button.onClick.AddListener(adClicked);
				}

				// set default visible state
				Visible = desc.Visible;
				SetGravity(gravity);

				// load ad
				service.StartCoroutine(init(createdCallback));

				// set screen size changed callback
				ReignServices.ScreenSizeChangedCallback += ReignServices_ScreenSizeChangedCallback;
			}
			catch (Exception e)
			{
				Debug.LogError(e.Message);
				if (createdCallback != null) createdCallback(false);
			}
		}
Ejemplo n.º 47
0
		/// <summary>
		/// Use to create a single Ad.
		/// </summary>
		/// <param name="desc">Your AdDesc settings.</param>
		/// <param name="createdCallback">The callback that fires when done.</param>
		/// <returns>Returns Ad object</returns>
		public static Ad CreateAd(AdDesc desc, AdCreatedCallbackMethod createdCallback)
		{
			if (creatingAds)
			{
				Debug.LogError("You must wait for the last ad to finish being created!");
				if (createdCallback != null) createdCallback(false);
				return null;
			}
			creatingAds = true;
			AdManager.createdCallback = createdCallback;
			plugins.Add(AdPluginAPI.New(desc, async_CreatedCallback));
			
			return new Ad(plugins[plugins.Count-1]);
		}
Ejemplo n.º 48
0
        private async void init(AdDesc desc, AdCreatedCallbackMethod createdCallback)
        {
            if (WinRTPlugin.AdGrid == null)
            {
                if (createdCallback != null)
                {
                    createdCallback(false);
                }
                return;
            }

            await WinRTPlugin.CoreWindow.Dispatcher.RunAsync(CoreDispatcherPriority.Normal, delegate()
            {
                bool pass = true;
                try
                {
                    adControl                 = new AdControl();
                    adControl.AdClick        += adControl_Clicked;
                    adControl.AdLoaded       += adControl_AdRefreshed;
                    adControl.AdLoadingError += adControl_ErrorOccurred;
                    adControl.AdCovered      += adControl_AdCovered;
                    adControl.NoAd           += adControl_NoAd;
                    adControl.IsTest          = desc.Testing;
                    adControl.CollapseOnError = true;

                    adControl.SetValue(Windows.UI.Xaml.Controls.Canvas.ZIndexProperty, 98);

                                        #if UNITY_WP_8_1
                    adControl.RefreshInterval = desc.WP8_AdDuplex_RefreshRate;
                    adControl.AppKey          = desc.WP8_AdDuplex_ApplicationKey;
                    adControl.AdUnitId        = desc.WP8_AdDuplex_UnitID;
                                        #else
                    adControl.RefreshInterval = desc.WinRT_AdDuplex_RefreshRate;
                    adControl.AppKey          = desc.WinRT_AdDuplex_ApplicationKey;
                    adControl.AdUnitId        = desc.WinRT_AdDuplex_UnitID;
                    switch (desc.WinRT_AdDuplex_AdSize)
                    {
                    case WinRT_AdDuplex_AdSize.Tall_160x600:
                        adControl.Size = "160x600";
                        break;

                    case WinRT_AdDuplex_AdSize.Wide_250x125:
                        adControl.Size = "250x125";
                        break;

                    case WinRT_AdDuplex_AdSize.Wide_292x60:
                        adControl.Size = "292x60";
                        break;

                    case WinRT_AdDuplex_AdSize.Wide_300x250:
                        adControl.Size = "300x250";
                        break;

                    case WinRT_AdDuplex_AdSize.Wide_500x130:
                        adControl.Size = "500x130";
                        break;

                    case WinRT_AdDuplex_AdSize.Wide_728x90:
                        adControl.Size = "728x90";
                        break;

                    case WinRT_AdDuplex_AdSize.Square_250x250:
                        adControl.Size = "250x250";
                        break;

                    default:
                        Debug.LogError("AdPlugin: Unsuported Ad size");
                        break;
                    }
                                        #endif

                                        #if UNITY_WP_8_1
                    setGravity(desc.WP8_AdDuplex_AdGravity);
                                        #else
                    setGravity(desc.WinRT_AdDuplex_AdGravity);
                                        #endif

                    eventCallback = desc.EventCallback;
                    WinRTPlugin.AdGrid.Children.Add(adControl);
                    setVisible(desc.Visible);
                    Debug.Log("Created Ad of AppKey: " + adControl.AppKey + " AdUnitID" + adControl.AdUnitId);
                }
                catch (Exception e)
                {
                    adControl = null;
                    Debug.LogError(e.Message);
                }

                ReignServices.InvokeOnUnityThread(delegate
                {
                    if (createdCallback != null)
                    {
                        createdCallback(pass);
                    }
                });
            });
        }
 public MicrosoftAdvertising_AdPlugin_WinRT(AdDesc desc, AdCreatedCallbackMethod createdCallback)
 {
     InitNative(this, desc, createdCallback);
 }
Ejemplo n.º 50
0
		private static void init_MicrosoftAdvertising_AdPlugin(MicrosoftAdvertising_AdPlugin_WinRT plugin, AdDesc desc, AdCreatedCallbackMethod createdCallback)
		{
			#if !WINRT_DISABLE_MS_ADS
			plugin.Native = new MicrosoftAdvertising_AdPlugin_Native(desc, createdCallback);
			#endif
		}
Ejemplo n.º 51
0
		private static void init_AdDuplex_AdPlugin(AdDuplex_AdPlugin_WinRT plugin, AdDesc desc, AdCreatedCallbackMethod createdCallback)
		{
			#if !WINRT_DISABLE_ADDUPLEX_ADS
			plugin.Native = new AdDuplex_AdPlugin_Native(desc, createdCallback);
			#endif
		}
Ejemplo n.º 52
0
 private static void init_AdMob_AdPlugin(AdMob_AdPlugin_WP8 plugin, AdDesc desc, AdCreatedCallbackMethod createdCallback)
 {
     plugin.Native = new AdMob_AdPlugin_Native(desc, createdCallback);
 }
Ejemplo n.º 53
0
		private IEnumerator init(AdCreatedCallbackMethod createdCallback)
		{
			// request Ad
			if (testing)
			{
				var www = new WWW("http://media.mydas.mobi/images/rich/T/test_mm/collapsed.gif");
				yield return www;

				var data = www.bytes;
				if (data == null || data.Length == 0)
				{
					Debug.LogError("Test Ad failed to loadb");
					if (createdCallback != null) createdCallback(false);
					yield break;
				}

				gifImage = new TextureGIF(data, frameUpdatedCallback);
				if (desc.UseClassicGUI) guiTexture = gifImage.CurrentFrame.Texture;
				else adImage.sprite = gifImage.CurrentFrame.Sprite;
				SetGravity(gravity);
				var texture = gifImage.CurrentFrame.Texture;
				Debug.Log(string.Format("Ad Image Size: {0}x{1}", texture.width, texture.height));
				if (createdCallback != null) createdCallback(true);
				if (adEvent != null) adEvent(AdEvents.Refreshed, null);
			}
			else
			{
				// get external IP address
				var ipWWW = new WWW("http://checkip.dyndns.org/");
				yield return ipWWW;
				var match = Regex.Match(ipWWW.text, @"Current IP Address\: (\d*\.\d*\.\d*\.\d*)");
				if (!match.Success)
				{
					if (createdCallback != null) createdCallback(false);
					yield break;
				}
				externalIP = match.Groups[1].Value;
				Debug.Log("External IP: " + externalIP);

				// load ad
				service.StartCoroutine(asyncRefresh(createdCallback));
			}
		}