2

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

我遵循了调解教程,但我还没有创建 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 广告中介需要执行的步骤吗?

4

1 回答 1

-2

Adobe 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.支持横幅、插页式、原生快递广告、视频

快速开始

在 as3 中显示 firebase 横幅广告

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

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

移除 Firebase Admob 中介横幅

Admob.getInstance().hideBanner();

显示 Admob Native Express 广告

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

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 轻松设置

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>
        <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-08-10T03:11:23.930 回答