【问题标题】:Admob and facebook mediationAdmob 和 facebook 中介
【发布时间】:2016-10-09 08:32:17
【问题描述】:

这是我第一次在 android 中集成广告。我已经使用google tutorial 集成了 Admob。现在,我想将 Admob Firebase 与 Facebook 中介结合使用。

我关注了mediation tutorial,但我还没有创建 Facebook 应用程序。此外,在教程中,它说要编译 .jar 文件,但我下载的 SDK 文件是 .aar 格式。 下载的文件中还有 4 个文件夹(facebook-android-sdk-4.12.1)。我应该使用哪一个? 我是 Facebook Audience Network 教程,它仅通过为 facebook 广告创建 Placement Id 来指导我们独立使用 facebook Ads,但我已经有了 Admob 广告单元 ID。我没有找到任何关于调解的 facebook 教程。

有人可以向我解释在将 AdMobs 与 firebase 集成后启用 facebook 广告中介需要执行的步骤吗?

【问题讨论】:

    标签: android admob facebook-audience-network mobile-ad-mediation


    【解决方案1】:

    适用于 Adob​​e Air 的 Firebase Admob 中介 ANE

    Google Firebase Admob Mediation Ane 为 flex 和 flash 开发者提供 as3 api 以将 admob、unityads、inmobi、chartboost、vunlge 和 gdt 集成到 adobe air ios 和 android 应用程序中,支持横幅广告、插页式广告、原生快递广告和视频,不需要java或者oc。支持banner,Intersitial,native express ads,Video

    快速入门

    在 as3 中显示 firebase 横幅广告

    Admob.getInstance().showBanner("your banner id",AdmobSize.BANNER_320x50,AdmobPosition.BOTTOM_CENTER);
    

    AdmobPosition 类指定放置横幅的位置。 AdmobSize 指定要显示的女巫大小横幅

    移除 Firebase Admob 中介横幅

    Admob.getInstance().hideBanner();
    

    显示 Admob 原生快捷广告

    原生快递广告是一种类似于banner的admob新广告格式,如何在flash air ios和android应用中展示原生快递广告? it api也类似于banner。

    Admob.getInstance().showNativeBannerAbsolute(nativeID,new AdmobSize(320,132),0,260);
    

    nativeID 来自 apps.admob.com 格式,例如 ca-app-pub-3940256099942544/2562852117 AdSize 是您在 apps.admob.com 中设置的值

    隐藏 admob 原生横幅

    Admob.getInstance().hideNativeBanner();
    

    在同一屏幕上显示多横幅或原生横幅。

    如果要在同一屏幕显示多个横幅,请设置横幅名称如下。

    Admob.getInstance().showBanner("your banner id",AdmobSize.BANNER_320x50,AdmobPosition.BOTTOM_CENTER,0,null,"bannerName1");
    

    隐藏命名横幅

    Admob.getInstance().hideBanner("bannerName1");
    

    Admob ANE 显示插页式

    Admob.getInstance().cacheInterstitial("interstitial id"); 
    

    插页式广告需要在显示之前加载。在适当的时候展示 在您的应用中停止点,在显示前检查插页式广告是否准备就绪:

    if (Admob.getInstance().isInterstitialReady()) {
      Admob.getInstance().showInterstitial();
    }
    

    设置 Admob 目标参数

    设置 Admob 目标参数,例如测试广告和儿童应用 如果您想测试广告或您的应用有儿童目标,您可以使用 admob ANE easy 进行设置

    extraParam=new ExtraParameter();
    extraParam.testDeviceID="true";
    extraParam.isChildApp=true;
    Admob.getInstance().showBanner("banner ID",AdmobSize.BANNER_320x50,AdmobPosition.BOTTOM_CENTER,80,extraParam);
    

    处理 admob 事件

    Firebase admob ane 支持所有 admob 原生事件,您可以如下处理

    Admob.getInstance().addEventListener(AdmobEvent.onInterstitialReceive, onAdEvent);
    private function onAdEvent(event:AdmobEvent):void
    {
        if (event.type == AdmobEvent.onBannerReceive)
        {
            trace(event.instanceName,event.data.width, event.data.height);
        }
        if (event.type == AdmobEvent.onInterstitialReceive)
        {
            Admob.getInstance().showInterstitial();
        }
    }
    

    IOS权限配置

    ios 9 需要 NSAppTransportSecurity,要允许 http 请求,需要添加 NSAppTransportSecurity 密钥

            <key>NSAppTransportSecurity</key>
            <dict>
             <key>NSAllowsArbitraryLoads</key>
             <true/>
            </dict>
    

    Android 权限配置

    <android>
            <manifestAdditions><![CDATA[
                <manifest android:installLocation="auto">
                    <uses-permission android:name="android.permission.INTERNET"/>
                    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
                    <uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/>
                     <uses-permission android:name="android.permission.READ_PHONE_STATE"/>
                     <application>
      <meta-data android:name="com.google.android.gms.version"
            android:value="@integer/google_play_services_version" />
            <activity android:name="com.google.android.gms.common.api.GoogleApiActivity"
                      android:theme="@android:style/Theme.Translucent.NoTitleBar"
                      android:exported="false"/>
                            <activity
                android:name="com.google.android.gms.ads.AdActivity"
                android:configChanges="keyboard|keyboardHidden|orientation|screenLayout|uiMode|screenSize|smallestScreenSize" android:theme="@android:style/Theme.Translucent"/>
    
                <activity android:name="com.chartboost.sdk.CBImpressionActivity"
                       android:excludeFromRecents="true"
                       android:hardwareAccelerated="true"
                       android:theme="@android:style/Theme.Translucent.NoTitleBar.Fullscreen"
                       android:configChanges="keyboardHidden|orientation|screenSize"/>
    
                    <service android:name="com.qq.e.comm.DownloadService" android:exported="false" />
                    <activity android:name="com.qq.e.ads.ADActivity" android:configChanges="keyboard|keyboardHidden|orientation|screenSize" />
    
                    <activity
                android:name="com.unity3d.ads.android.view.UnityAdsFullscreenActivity"
                android:configChanges="fontScale|keyboard|keyboardHidden|locale|mnc|mcc|navigation|orientation|screenLayout|screenSize|smallestScreenSize|uiMode|touchscreen"
                android:theme="@android:style/Theme.NoTitleBar.Fullscreen"
                android:hardwareAccelerated="true"
                />
    
                 <activity
                android:name="com.inmobi.rendering.InMobiAdActivity"
                android:configChanges="keyboardHidden|orientation|keyboard|smallestScreenSize|screenSize"
                android:hardwareAccelerated="true"
                android:theme="@android:style/Theme.Translucent.NoTitleBar"
                tools:ignore="UnusedAttribute" />
                <receiver
                android:name="com.inmobi.commons.core.utilities.uid.ImIdShareBroadCastReceiver"
                android:enabled="true"
                android:exported="true"
                tools:ignore="ExportedReceiver">
                <intent-filter>
                    <action android:name="com.inmobi.share.id" />
                </intent-filter>
            </receiver>
            <service
                android:name="com.inmobi.signals.activityrecognition.ActivityRecognitionManager"
                android:enabled="true" />
    
                     <activity
         android:name="com.vungle.publisher.FullScreenAdActivity"
         android:configChanges="keyboardHidden|orientation|screenSize"
         android:theme="@android:style/Theme.NoTitleBar.Fullscreen"/>
                         </application>
                    </manifest>
                ]]></manifestAdditions>
            </android>
    

    ANE ID

    <extensionID>com.google.firebase.admob</extensionID>
    

    项目主页https://github.com/monumentichb/Firebase-Admob-Mediation-ANE

    【讨论】:

      猜你喜欢
      • 2016-12-07
      • 2016-10-12
      • 2021-05-08
      • 1970-01-01
      • 2022-07-25
      • 1970-01-01
      • 2021-07-16
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多