Example #1
0
        private static void nativeAdDidFailWithErrorBridgeCallback(int uniqueId, string error)
        {
            NativeAdContainer container = NativeAdBridgeIOS.nativeAdContainerForNativeAdId(uniqueId);

            if (container && container.onError != null)
            {
                container.onError(error);
            }
        }
        public override void OnMediaDownloaded(int uniqueId, FBNativeAdBridgeCallback callback)
        {
            NativeAdContainer container = NativeAdBridgeIOS.nativeAdContainerForNativeAdId(uniqueId);

            if (container)
            {
                container.onMediaDownload = callback;
            }
        }
Example #3
0
        private static void nativeAdDidLoadBridgeCallback(int uniqueId)
        {
            NativeAdContainer container = NativeAdBridgeIOS.nativeAdContainerForNativeAdId(uniqueId);

            if (container && container.onLoad != null)
            {
                container.onLoad();
            }
        }
Example #4
0
        private static void nativeAdWillLogImpressionBridgeCallback(int uniqueId)
        {
            NativeAdContainer container = NativeAdBridgeIOS.nativeAdContainerForNativeAdId(uniqueId);

            if (container && container.onImpression != null)
            {
                container.onImpression();
            }
        }
        public override void OnFinishedClick(int uniqueId, FBNativeAdBridgeCallback callback)
        {
            NativeAdContainer container = NativeAdBridgeIOS.nativeAdContainerForNativeAdId(uniqueId);

            if (container)
            {
                container.onFinishedClick = callback;
            }
        }
        private static void nativeAdDidFinishHandlingClickBridgeCallback(int uniqueId)
        {
            NativeAdContainer container = NativeAdBridgeIOS.nativeAdContainerForNativeAdId(uniqueId);

            if (container && container.onFinishedClick != null)
            {
                container.onFinishedClick();
            }
        }
        private AndroidJavaObject nativeAdForNativeAdId(int uniqueId)
        {
            NativeAdContainer container = null;

            if (nativeAds.TryGetValue(uniqueId, out container))
            {
                return(container.bridgedNativeAd);
            }
            return(null);
        }
Example #8
0
        public override void OnImpression(int uniqueId,
                                          FBNativeAdBridgeCallback callback)
        {
            NativeAdContainer container = NativeBannerAdBridgeIOS.nativeBannerAdContainerForNativeBannerAdId(uniqueId);

            if (container)
            {
                container.onImpression = callback;
            }
        }
Example #9
0
        public override void OnError(int uniqueId,
                                     FBNativeAdBridgeErrorCallback callback)
        {
            NativeAdContainer container = NativeBannerAdBridgeIOS.nativeBannerAdContainerForNativeBannerAdId(uniqueId);

            if (container)
            {
                container.onError = callback;
            }
        }
Example #10
0
        // Sets up internal managed callbacks

        public override void OnLoad(int uniqueId,
                                    FBNativeAdBridgeCallback callback)
        {
            NativeAdContainer container = NativeAdBridgeIOS.nativeAdContainerForNativeAdId(uniqueId);

            if (container)
            {
                container.onLoad = (container.nativeAd.LoadAdFromData);
            }
        }
        private AndroidJavaObject nativeAdForNativeAdId(int uniqueId)
        {
            NativeAdContainer nativeAdContainer = null;
            bool success = NativeAdBridgeAndroid.nativeAds.TryGetValue(uniqueId, out nativeAdContainer);

            if (success)
            {
                return(nativeAdContainer.bridgedNativeAd);
            }
            else
            {
                return(null);
            }
        }
Example #12
0
        protected NativeAdContainer NativeAdContainerForNativeAdId(int uniqueId)
        {
            NativeAdContainer nativeAdContainer = null;
            bool success = NativeAdBridgeAndroid.nativeAds.TryGetValue(uniqueId, out nativeAdContainer);

            if (success)
            {
                return(nativeAdContainer);
            }
            else
            {
                return(null);
            }
        }
Example #13
0
        private static NativeAdContainer nativeBannerAdContainerForNativeBannerAdId(int uniqueId)
        {
            NativeAdContainer nativeBannerAd = null;
            bool success = NativeBannerAdBridgeIOS.nativeBannerAds.TryGetValue(uniqueId, out nativeBannerAd);

            if (success)
            {
                return(nativeBannerAd);
            }
            else
            {
                return(null);
            }
        }
        // Sets up internal managed callbacks

        public override void OnLoad(int uniqueId,
                                    FBNativeAdBridgeCallback callback)
        {
            NativeAdContainer container = NativeAdBridgeIOS.nativeAdContainerForNativeAdId(uniqueId);

            if (container)
            {
                container.onLoad = (delegate() {
                    container.nativeAd.loadAdFromData();
                    if (callback != null)
                    {
                        callback();
                    }
                });
            }
        }
        public override void Release(int uniqueId)
        {
            NativeAdContainer nativeAdContainer = this.nativeAdContainerForNativeAdId(uniqueId);
            AndroidJavaObject nativeAd          = nativeAdContainer.bridgedNativeAd;

            NativeAdBridgeAndroid.nativeAds.Remove(uniqueId);
            if (nativeAd != null)
            {
                AndroidJavaClass  unityPlayer = new AndroidJavaClass("com.unity3d.player.UnityPlayer");
                AndroidJavaObject activity    = unityPlayer.GetStatic <AndroidJavaObject>("currentActivity");
                activity.Call("runOnUiThread", new AndroidJavaRunnable(() => {
                    AndroidJavaObject parent = nativeAdContainer.ctaView.Call <AndroidJavaObject> ("getParent");
                    nativeAd.Call("destroy");
                    parent.Call("removeView", nativeAdContainer.mediaView);
                    parent.Call("removeView", nativeAdContainer.iconView);
                    parent.Call("removeView", nativeAdContainer.ctaView);
                }));
            }
            ;
        }
Example #16
0
        public override int Create(string placementId, NativeAd nativeAd)
        {
            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.NativeAd", androidJavaObject, placementId);
            NativeAdBridgeListenerProxy nativeAdBridgeListenerProxy = new NativeAdBridgeListenerProxy(nativeAd, androidJavaObject2);

            androidJavaObject2.Call("setAdListener", nativeAdBridgeListenerProxy);
            NativeAdContainer nativeAdContainer = new NativeAdContainer(nativeAd);

            nativeAdContainer.bridgedNativeAd = androidJavaObject2;
            nativeAdContainer.listenerProxy   = nativeAdBridgeListenerProxy;
            int num = lastKey;

            nativeAds.Add(num, nativeAdContainer);
            lastKey++;
            return(num);
        }
Example #17
0
        public override int RegisterGameObjectsForInteraction(int uniqueId, Rect mediaViewRect, Rect iconViewRect, Rect ctaViewRect)
        {
            NativeAdContainer nativeAdContainer = NativeAdContainerForNativeAdId(uniqueId);
            AndroidJavaObject nativeAd          = nativeAdContainer.bridgedNativeAd;

            if (nativeAd != null)
            {
                AndroidJavaClass  unityPlayer = new AndroidJavaClass("com.unity3d.player.UnityPlayer");
                AndroidJavaObject activity    = unityPlayer.GetStatic <AndroidJavaObject>("currentActivity");
                AndroidJavaObject context     = nativeAdContainer.context;
                activity.Call("runOnUiThread", new AndroidJavaRunnable(() =>
                {
                    AndroidJavaClass R          = new AndroidJavaClass("android.R$id");
                    AndroidJavaObject unityView = activity.Call <AndroidJavaObject>("findViewById", R.GetStatic <int>("content"));

                    AndroidJavaObject iconView = CreateViewFromRect(iconViewRect, "com.facebook.ads.AdIconView", context);
                    nativeAdContainer.iconView = iconView;
                    AndroidJavaObject ctaView  = CreateViewFromRect(ctaViewRect, "android/view/View", context);
                    nativeAdContainer.ctaView  = ctaView;
                    unityView.Call("addView", iconView);
                    unityView.Call("addView", ctaView);
                    AndroidJavaObject ctaViews = new AndroidJavaObject("java.util.ArrayList");
                    ctaViews.Call <bool>("add", ctaView);

                    if (mediaViewRect != Rect.zero)
                    {
                        AndroidJavaObject mediaView = CreateViewFromRect(mediaViewRect, "com.facebook.ads.MediaView", context);
                        nativeAdContainer.mediaView = mediaView;
                        unityView.Call("addView", mediaView);
                        nativeAd.Call("registerViewForInteraction", unityView, mediaView, iconView, ctaViews);
                    }
                    else
                    {
                        nativeAd.Call("registerViewForInteraction", unityView, iconView, ctaViews);
                    }
                }));
            }
            return(uniqueId);
        }
        public override int Create(string placementId, NativeAd nativeAd)
        {
            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           bridgedNativeAd = new AndroidJavaObject("com.facebook.ads.NativeAd", args);
            NativeAdBridgeListenerProxy proxy           = new NativeAdBridgeListenerProxy(nativeAd, bridgedNativeAd);

            object[] objArray2 = new object[] { proxy };
            bridgedNativeAd.Call("setAdListener", objArray2);
            NativeAdContainer container = new NativeAdContainer(nativeAd)
            {
                bridgedNativeAd = bridgedNativeAd,
                listenerProxy   = proxy
            };
            int lastKey = NativeAdBridgeAndroid.lastKey;

            nativeAds.Add(lastKey, container);
            NativeAdBridgeAndroid.lastKey++;
            return(lastKey);
        }
Example #19
0
        override public int Create(string placementId, NativeAdBase nativeAd)
        {
            AdUtility.Prepare();
            AndroidJavaClass  unityPlayer     = new AndroidJavaClass("com.unity3d.player.UnityPlayer");
            AndroidJavaObject currentActivity = unityPlayer.GetStatic <AndroidJavaObject>("currentActivity");
            AndroidJavaObject context         = currentActivity.Call <AndroidJavaObject>("getApplicationContext");

            String androidAdClass = "";

            if (nativeAd.nativeAdType == NativeAdType.NativeAd)
            {
                androidAdClass = "com.facebook.ads.NativeAd";
            }
            else if (nativeAd.nativeAdType == NativeAdType.NativeBannerAd)
            {
                androidAdClass = "com.facebook.ads.NativeBannerAd";
            }

            AndroidJavaObject bridgedNativeAd = new AndroidJavaObject(androidAdClass, context, placementId);

            NativeAdBridgeListenerProxy proxy = new NativeAdBridgeListenerProxy(nativeAd, bridgedNativeAd);

            bridgedNativeAd.Call("setAdListener", proxy);

            NativeAdContainer nativeAdContainer = new NativeAdContainer(nativeAd)
            {
                bridgedNativeAd = bridgedNativeAd,
                listenerProxy   = proxy,
                context         = context
            };

            int key = NativeAdBridgeAndroid.lastKey;

            NativeAdBridgeAndroid.nativeAds.Add(key, nativeAdContainer);
            NativeAdBridgeAndroid.lastKey++;
            return(key);
        }
Example #20
0
        public override int Create (string placementId,
                                    NativeAd nativeAd)
        {
            AdUtility.prepare ();
            AndroidJavaClass unityPlayer = new AndroidJavaClass("com.unity3d.player.UnityPlayer");
            AndroidJavaObject currentActivity = unityPlayer.GetStatic<AndroidJavaObject>("currentActivity");
            AndroidJavaObject context = currentActivity.Call<AndroidJavaObject>("getApplicationContext");

            AndroidJavaObject bridgedNativeAd = new AndroidJavaObject("com.facebook.ads.NativeAd", context, placementId);

            NativeAdBridgeListenerProxy proxy = new NativeAdBridgeListenerProxy (nativeAd, bridgedNativeAd);
            bridgedNativeAd.Call ("setAdListener", proxy);

            NativeAdContainer nativeAdContainer = new NativeAdContainer (nativeAd);
            nativeAdContainer.bridgedNativeAd = bridgedNativeAd;
            nativeAdContainer.listenerProxy = proxy;

            int key = NativeAdBridgeAndroid.lastKey;
            NativeAdBridgeAndroid.nativeAds.Add(key, nativeAdContainer);
            NativeAdBridgeAndroid.lastKey++;
            return key;
        }