Не могу увидеть рекламу с admob ane - PullRequest
1 голос
/ 11 марта 2019

Я следовал https://github.com/lilili87222/admob-for-flash

Я все еще не могу видеть рекламу с admob ane.

Шаги :

1.Init Admob ANE

Добавьте Admob ane в путь сборки проекта air и добавьте следующий код в файл сценария

import so.cuo.platform.admob.*;
Admob.getInstance().initAdmobSDK("your admob app ID");

2.Добавить баннер Admob в приложении Adobe Air

Вот минимальный код, необходимый для показа баннера admob.

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

Класс AdmobPosition указывает, где разместить баннер. AdmobSize указывает, какой размер баннера показывать

3. Удалить баннер По умолчанию баннеры видны. Чтобы скрыть баннер,

Admob.getInstance().hideBanner();

4.Admob ANE Show Interstitial

Вот минимальный код для интеграции вставки в приложение Air ios или flex-приложение для Android.

Admob.getInstance().cacheInterstitial("your Interstitial ID ");

Убедитесь, что вставка загружена, прежде чем показывать ее:

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

5. Размеры рекламных баннеров Admob

Помимо констант в AdSize, вы также можете создать нестандартный размер:

//Create a 320x250 banner.
AdSize adSize = new AdSize(320, 250);
Admob.getInstance().showBannerAbsolute(adSize,0,30);

6. Задать целевой параметр Admob

Если вы хотите, чтобы реклама предназначалась для детей:

  extraParam=new ExtraParameter();
extraParam.testDeviceID="true";
extraParam.isChildApp=true;//if is tagForChildDirectedTreatment,set true
    extraParam.isDesignedForFamilies=true;
    extraParam.nonPersonalizedAds=true;//if want to load non Personalized ads set true
Admob.getInstance().showBanner("Your banner ID",AdmobSize.BANNER_320x50,AdmobPosition.BOTTOM_CENTER,80,extraParam);

7.Ad Events

Баннер и Interstitial содержат много рекламных событий, на которые вы можете зарегистрироваться. Чтобы установить рекламные события на вставке и показывать вставку при успешной загрузке объявления:

 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();
        }
    }

8.Admob Видео с наградами

Видео API похож на Interstitial

Чтобы установить рекламное событие на видео и показать видео, когда оно успешно загружено:

if(admob.isVideoReady()){
    admob.showVideo();
}else{
    admob.cacheVideo(videoID);
}
    Admob.getInstance().addEventListener(AdmobEvent.onVideoReceive, onVideoEvent);
    private function onVideoEvent(event:AdmobEvent):void
    {
        if (event.type == AdmobEvent.onVideoReceive)
        {
            trace("load video success,you can show video now");
        }

    }

9.IOS минимальная версия конфигурации

admob требует ios 8 и новее

<key>MinimumOSVersion</key>
    <string>8.0</string>

простой пример

<iPhone>
        <InfoAdditions><![CDATA[
            <key>UIDeviceFamily</key>
            <array>
                <string>1</string>
                <string>2</string>
            </array>
                <key>MinimumOSVersion</key>
        <string>8.0</string>
            <key>NSAppTransportSecurity</key>
<dict>
    <key>NSAllowsArbitraryLoads</key>
    <true/>
    <key>NSAllowsArbitraryLoadsForMedia</key>
    <true/>
    <key>NSAllowsArbitraryLoadsInWebContent</key>
    <true/>
</dict>
        ]]></InfoAdditions>
        <requestedDisplayResolution>high</requestedDisplayResolution>
    </iPhone>

10.and разрешения конфигурации Android

Meta Config com.google.android.gms.ads.APPLICATION_ID требуется от admob 17 Пожалуйста, замените ca-app-pub-3940256099942544 ~ 3347511713 своим идентификатором admob

<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.ads.AdActivity" android:configChanges="keyboard|keyboardHidden|orientation|screenLayout|uiMode|screenSize|smallestScreenSize" android:theme="@android:style/Theme.Translucent"/>

 <meta-data
            android:name="com.google.android.gms.ads.APPLICATION_ID"
            android:value="ca-app-pub-3940256099942544~3347511713"/>

                 </application>
            </manifest>
        ]]></manifestAdditions>
    </android>

1 Ответ

0 голосов
/ 25 марта 2019

Этот ANE очень старый и устаревший.С тех пор AdMob SDK несколько раз менялся с серьезным обновлением в 2018. Вы можете использовать этот , который почти всегда обновляется.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...