public override int Create(string placementId,
                                   InterstitialAd interstitialAd)
        {
            AdUtility.Prepare();
            AndroidJavaClass  unityPlayer           = new AndroidJavaClass("com.unity3d.player.UnityPlayer");
            AndroidJavaObject currentActivity       = unityPlayer.GetStatic <AndroidJavaObject>("currentActivity");
            AndroidJavaObject context               = currentActivity.Call <AndroidJavaObject>("getApplicationContext");
            AndroidJavaObject bridgedInterstitialAd = new AndroidJavaObject("com.facebook.ads.InterstitialAd", context, placementId);

            InterstitialAdBridgeListenerProxy proxy = new InterstitialAdBridgeListenerProxy(interstitialAd, bridgedInterstitialAd);

            bridgedInterstitialAd.Call("setAdListener", proxy);

            InterstitialAdContainer interstitialAdContainer = new InterstitialAdContainer(interstitialAd)
            {
                bridgedInterstitialAd = bridgedInterstitialAd,
                listenerProxy         = proxy
            };

            int key = InterstitialAdBridgeAndroid.lastKey;

            InterstitialAdBridgeAndroid.interstitialAds.Add(key, interstitialAdContainer);
            InterstitialAdBridgeAndroid.lastKey++;
            return(key);
        }
        private static void interstitialAdWillLogImpressionBridgeCallback(int uniqueId)
        {
            InterstitialAdContainer container = InterstitialAdBridgeIOS.interstitialAdContainerForuniqueId(uniqueId);

            if (container && container.onImpression != null)
            {
                container.onImpression();
            }
        }
        private static void interstitialAdDidFailWithErrorBridgeCallback(int uniqueId, string error)
        {
            InterstitialAdContainer container = InterstitialAdBridgeIOS.interstitialAdContainerForuniqueId(uniqueId);

            if (container && container.onError != null)
            {
                container.onError(error);
            }
        }
        private static void interstitialAdDidClickBridgeCallback(int uniqueId)
        {
            InterstitialAdContainer container = InterstitialAdBridgeIOS.interstitialAdContainerForuniqueId(uniqueId);

            if (container && container.onClick != null)
            {
                container.onClick();
            }
        }
        private static void interstitialAdWillCloseBridgeCallback(int uniqueId)
        {
            InterstitialAdContainer container = InterstitialAdBridgeIOS.interstitialAdContainerForuniqueId(uniqueId);

            if (container && container.onWillClose != null)
            {
                container.onWillClose();
            }
        }
        // Sets up internal managed callbacks

        public override void OnLoad(int uniqueId,
                                    FBInterstitialAdBridgeCallback callback)
        {
            InterstitialAdContainer container = InterstitialAdBridgeIOS.interstitialAdContainerForuniqueId(uniqueId);

            if (container)
            {
                container.onLoad = container.interstitialAd.LoadAdFromData;
            }
        }
        public override void OnError(int uniqueId,
                                     FBInterstitialAdBridgeErrorCallback callback)
        {
            InterstitialAdContainer container = InterstitialAdBridgeIOS.interstitialAdContainerForuniqueId(uniqueId);

            if (container)
            {
                container.onError = callback;
            }
        }
        public override void OnWillClose(int uniqueId,
                                         FBInterstitialAdBridgeCallback callback)
        {
            InterstitialAdContainer container = InterstitialAdBridgeIOS.interstitialAdContainerForuniqueId(uniqueId);

            if (container)
            {
                container.onWillClose = callback;
            }
        }
        private AndroidJavaObject interstitialAdForuniqueId(int uniqueId)
        {
            InterstitialAdContainer container = null;

            if (interstitialAds.TryGetValue(uniqueId, out container))
            {
                return(container.bridgedInterstitialAd);
            }
            return(null);
        }
        public override void OnImpression(int uniqueId,
                                          FBInterstitialAdBridgeCallback callback)
        {
            InterstitialAdContainer container = InterstitialAdBridgeIOS.interstitialAdContainerForuniqueId(uniqueId);

            if (container)
            {
                container.onImpression = callback;
            }
        }
        public override int Load(int uniqueId, String bidPayload)
        {
            AdUtility.Prepare();
            InterstitialAdContainer interstitialAdContainer = InterstitialAdContainerForuniqueId(uniqueId);

            if (interstitialAdContainer != null)
            {
                interstitialAdContainer.Load(bidPayload);
            }
            return(uniqueId);
        }
        private static InterstitialAdContainer interstitialAdContainerForuniqueId(int uniqueId)
        {
            InterstitialAdContainer interstitialAd = null;
            bool success = InterstitialAdBridgeIOS.interstitialAds.TryGetValue(uniqueId, out interstitialAd);

            if (success)
            {
                return(interstitialAd);
            }
            else
            {
                return(null);
            }
        }
        private AndroidJavaObject InterstitialAdForuniqueId(int uniqueId)
        {
            InterstitialAdContainer interstitialAdContainer = null;
            bool success = InterstitialAdBridgeAndroid.interstitialAds.TryGetValue(uniqueId, out interstitialAdContainer);

            if (success)
            {
                return(interstitialAdContainer.bridgedInterstitialAd);
            }
            else
            {
                return(null);
            }
        }
Exemple #14
0
        // Sets up internal managed callbacks

        public override void OnLoad(int uniqueId,
                                    FBInterstitialAdBridgeCallback callback)
        {
            InterstitialAdContainer container = InterstitialAdBridgeIOS.interstitialAdContainerForuniqueId(uniqueId);

            if (container)
            {
                container.onLoad = (delegate() {
                    container.interstitialAd.loadAdFromData();
                    if (callback != null)
                    {
                        callback();
                    }
                });
            }
        }
Exemple #15
0
        public override int Create(string placementId, InterstitialAd interstitialAd)
        {
            AdUtility.prepare();
            AndroidJavaClass  androidJavaClass   = new AndroidJavaClass("com.unity3d.player.UnityPlayer");
            AndroidJavaObject @static            = androidJavaClass.GetStatic <AndroidJavaObject>("currentActivity");
            AndroidJavaObject androidJavaObject  = @static.Call <AndroidJavaObject>("getApplicationContext", new object[0]);
            AndroidJavaObject androidJavaObject2 = new AndroidJavaObject("com.facebook.ads.InterstitialAd", androidJavaObject, placementId);
            InterstitialAdBridgeListenerProxy interstitialAdBridgeListenerProxy = new InterstitialAdBridgeListenerProxy(interstitialAd, androidJavaObject2);

            androidJavaObject2.Call("setAdListener", interstitialAdBridgeListenerProxy);
            InterstitialAdContainer interstitialAdContainer = new InterstitialAdContainer(interstitialAd);

            interstitialAdContainer.bridgedInterstitialAd = androidJavaObject2;
            interstitialAdContainer.listenerProxy         = interstitialAdBridgeListenerProxy;
            int num = lastKey;

            interstitialAds.Add(num, interstitialAdContainer);
            lastKey++;
            return(num);
        }
        public override int Create(string placementId, InterstitialAd interstitialAd)
        {
            AdUtility.prepare();
            AndroidJavaClass  class2 = new AndroidJavaClass("com.unity3d.player.UnityPlayer");
            AndroidJavaObject obj3   = class2.GetStatic <AndroidJavaObject>("currentActivity").Call <AndroidJavaObject>("getApplicationContext", new object[0]);

            object[]          args = new object[] { obj3, placementId };
            AndroidJavaObject bridgedInterstitialAd = new AndroidJavaObject("com.facebook.ads.InterstitialAd", args);
            InterstitialAdBridgeListenerProxy proxy = new InterstitialAdBridgeListenerProxy(interstitialAd, bridgedInterstitialAd);

            object[] objArray2 = new object[] { proxy };
            bridgedInterstitialAd.Call("setAdListener", objArray2);
            InterstitialAdContainer container = new InterstitialAdContainer(interstitialAd)
            {
                bridgedInterstitialAd = bridgedInterstitialAd,
                listenerProxy         = proxy
            };
            int lastKey = InterstitialAdBridgeAndroid.lastKey;

            interstitialAds.Add(lastKey, container);
            InterstitialAdBridgeAndroid.lastKey++;
            return(lastKey);
        }
        public override int Create (string placementId,
                                    InterstitialAd interstitialAd)
        {
            AdUtility.prepare ();
            AndroidJavaClass unityPlayer = new AndroidJavaClass("com.unity3d.player.UnityPlayer");
            AndroidJavaObject currentActivity = unityPlayer.GetStatic<AndroidJavaObject>("currentActivity");
            AndroidJavaObject context = currentActivity.Call<AndroidJavaObject>("getApplicationContext");

            AndroidJavaObject bridgedInterstitialAd = new AndroidJavaObject("com.facebook.ads.InterstitialAd", context, placementId);

            InterstitialAdBridgeListenerProxy proxy = new InterstitialAdBridgeListenerProxy (interstitialAd, bridgedInterstitialAd);
            bridgedInterstitialAd.Call ("setAdListener", proxy);

            InterstitialAdBridgeImpressionListenerProxy impressionListenerProxy = new InterstitialAdBridgeImpressionListenerProxy (interstitialAd, bridgedInterstitialAd);
            bridgedInterstitialAd.Call ("setImpressionListener", impressionListenerProxy);

            InterstitialAdContainer interstitialAdContainer = new InterstitialAdContainer (interstitialAd);
            interstitialAdContainer.bridgedInterstitialAd = bridgedInterstitialAd;
            interstitialAdContainer.listenerProxy = proxy;
            interstitialAdContainer.impressionListenerProxy = impressionListenerProxy;

            int key = InterstitialAdBridgeAndroid.lastKey;
            InterstitialAdBridgeAndroid.interstitialAds.Add(key, interstitialAdContainer);
            InterstitialAdBridgeAndroid.lastKey++;
            return key;
        }