AdMob в приложении AdobeAIR для Android

Не уверен, что это правильное место, чтобы задать этот вопрос, но я попробую.

Кто-нибудь знает, как размещать рекламу AdMob/любую другую рекламу в приложениях для Android, разработанных во Flash для Adobe AIR?

Повторяю, реклама в приложениях Adobe AIR, а не в java!

Или любой другой способ монетизации приложения?

Заранее спасибо .

Крис


person chris    schedule 13.12.2010    source источник
comment
Просто бросаю это сюда для тех, кто может искать решение этого вопроса, как и я. pixelpaton.com/?p=3313   -  person Stretch    schedule 09.05.2011


Ответы (8)


После долгих хлопот (учетная запись заблокирована на ADMOB) и исследований я заставил рекламу работать во всех моих приложениях для Android. Это будет работать во многих рекламных сетях, но большинство из них запретит мошенничество с кликами. Только одна сеть разрешает этот метод, и они также обеспечивают его поддержку.

У меня более 100 игровых приложений. с этим методом реализован и работает. Вот ссылка на один из них, чтобы вы могли увидеть, как он будет выглядеть в игре. Я использую несколько объявлений, чтобы заставить пользователя кликнуть и заработать немного денег: Рынок

Предлагает ли LeadBolt интеграцию HTML для рекламных баннеров? LeadBolt позволяет интегрировать рекламные баннеры в ваше приложение с помощью HTML, а не с помощью нашего SDK. Чтобы создать рекламный баннер в формате HTML после добавления приложения на портал LeadBolt, просто нажмите «Добавить рекламу» и выберите «Баннер приложения (HTML)» в раскрывающемся списке. Фрагмент HTML можно затем добавить непосредственно в структуру HTML вашего приложения. На данный момент моя эффективная цена за тысячу показов составляет 6,15 доллара США.

Я создал это руководство, чтобы выразить свою признательность:

Код издателя:

ШАГ I. Получите учетную запись: LeadBolt

ШАГ II: Нажмите на вкладку «ПРИЛОЖЕНИЯ» и «Создать новое приложение», чтобы создать объявление. Не забудьте изменить средство разблокировки контента на HTML-баннер. Пока в процессе. ШАГ III: Получите код HTML AD и сохраните его. Это все, что нам нужно от сайта. Насколько это было просто?

ФАЙЛ ОБЪЯВЛЕНИЯ HTML:

Создайте файл HTML и загрузите его на свой сайт. Не забудьте заменить свой HTML-код из предыдущего шага на то, что я вставил: *ВВЕДИТЕ HTML-КОД ОБЪЯВЛЕНИЯ ЗДЕСЬ*

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no"/>
<title>Untitled Document</title>
<style type="text/css">
body,td,th {
    color: #FFF;
}
body {
    background-color: #000;
    margin-left: 0px;
    margin-top: 0px;
    margin-right: 0px;
    margin-bottom: 0px;
    text-align: center;
    position: relative;
}
</style>
</head>

<body>

****ENTER HTML AD CODE HERE****

</body>
</html>

Код сценария действия:

ШАГ I: Кредит: я нашел это на другом сайте и хотел бы отдать должное автору pixelpaton.com. Я поставил: "*ВВЕДИТЕ ПОЛНЫЙ HTML-URL ЗДЕСЬ*". Где бы вы ни хотели разместить объявление, разместите следующий код:

// imports
import flash.events.Event;
import flash.events.LocationChangeEvent;
import flash.geom.Rectangle;
import flash.media.StageWebView;
import flash.net.navigateToURL;
import flash.net.URLRequest;
import flash.events.MouseEvent;

// setup variables
var _stageWebView:StageWebView;
var myAdvertURL:String = "****ENTER COMPLETE HTML URL HERE****";
//


    {
    // check that _stageWebView doersn't exist
    if (! _stageWebView) {
        _stageWebView = new StageWebView () ;
        // set the size of the html 'window'
        _stageWebView.viewPort = new Rectangle(0,0, 800, 100);
        // add a listener for when the content of the StageWebView changes
        _stageWebView.addEventListener(LocationChangeEvent.LOCATION_CHANGE,onLocationChange);
        // start loading the URL;
        _stageWebView.loadURL(myAdvertURL);
    }
    // show the ad by setting it's stage property;
    _stageWebView.stage = stage;
}
function toggleAd(event:MouseEvent):void {
    trace("toggling advert",_stageWebView);
    // check that StageWebView instance exists 
    if (_stageWebView) {
        trace("_stageWebView.stage:"+_stageWebView.stage);
        if (_stageWebView.stage == null) {
            //show the ad by setting the stage parameter
            _stageWebView.stage = stage;
        } else {
            // hide the ad by nulling the stage parameter
            _stageWebView.stage = null;
        }
    } else {
        // ad StageWebView doesn't exist - show create it

    }
}

function destroyAd(event:MouseEvent):void {
    // check that the instace of StageWebView exists
    if (_stageWebView) {
        trace("removing advert");
        // destroys the ad
        _stageWebView.stage = null;
        _stageWebView = null;
    }
}

function onLocationChange(event:LocationChangeEvent):void {
    // check that it's not our ad URL loading
    if (_stageWebView.location != myAdvertURL) {
        // destroy the ad as the user has kindly clicked on my ad
        destroyAd(null);
        // Launch a normal browser window with the captured  URL;
        navigateToURL( new URLRequest( event.location ) );
    }
}
// setup button listeners

Надеюсь, это сработает и поможет вам. Если у вас есть вопросы, дайте мне знать. Наслаждаться.

person user906996    schedule 23.08.2011

Я долго боролся с этим, но, наконец, получил его работу. Я создал на своем веб-сервере php-страницу, которая отображает содержимое Admob с помощью мобильного веб-решения. Затем я использую класс HTMLLoader в AS3 (Air 1.0) для отображения содержимого в своем приложении. Надеюсь это поможет.

Может

person user546684    schedule 23.12.2010
comment
Это довольно классная идея. Учитывая, что вы уже это сделали, не могли бы вы поделиться кодом? Держу пари, это было бы полезно для многих. Если вы не хотите делиться этим публично, напишите мне на [email protected], это определенно мне очень поможет. ‹br› Заранее спасибо - person chris; 24.12.2010

Показать простой баннер

var admob:Admob=Admob.getInstance();
admob.setKeys("you admob key");
admob.showBanner(Admob.BANNER,AdmobPosition.BOTTOM_CENTER);

отображать admob межстраничное объявление

import so.cuo.platform.admob.Admob;
import so.cuo.platform.admob.AdmobEvent;
import so.cuo.platform.admob.AdmobSize;

var admob:Admob=Admob.getInstance();
admob.setKeys("admob banner key","admob Interstitial key");
if (admob.isInterstitialReady())// check ad has cached ,if true show it
{
     admob.showInterstitial();
}
else
{
    admob.cacheInterstitial();
}

добавить admob дополнительный параметр

var extraParam:ExtraParameter=new ExtraParameter();
extraParam.isChildApp=true;
extraParam.testDeviceID="device id";

var admob:Admob=Admob.getInstance();
admob.setKeys("admob banner id");
admob.showBannerAbsolute(Admob.BANNER,0,100,extraParam);

для android. нужно добавить application-app.xml

<android>
        <manifestAdditions><![CDATA[
                        <manifest android:installLocation="auto">
                            <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
                            <uses-permission android:name="android.permission.ACCESS_WIFI_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"/>
                             </application>
                        </manifest>
                ]]></manifestAdditions>
    </android>

ссылка:https://code.google.com/p/flash-air-admob-ane-for-ios-and-android/

person backham    schedule 26.10.2014

На сегодняшний день лучшим решением является создание собственного расширения на Java для AIR 3. Существует коммерческое расширение, которое уже делает это здесь. Полный отказ от ответственности, я написал это расширение.

Вы также можете приступить к разработке расширений на странице http://www.adobe.com/devnet/air/articles/extending-air.html .

person Alex    schedule 14.11.2011

Некоторое обновление:

Теперь вы можете использовать собственное расширение AdMob Adobe AIR для Android.

Коммерческий: http://www.adobe.com/devnet/air/articles/admob-ane-android.html

Бесплатно: http://lancelotmobile.com/blog/admob-ane/

person michael    schedule 10.06.2012

вы можете монетизировать приложение с помощью admob, вот такой код.

var admob:Admob=Admob.getInstance();
admob.setKeys("banner key","interstitial key");
admob.showBanner(Admob.BANNER,AdmobPosition.BOTTOM_CENTER);

это не так полно, я успешно запустил на ios 8

ссылка https://github.com/lili87222/admob-for-flash

person iambodyjoy    schedule 27.09.2014

Всем, у кого возникла та же проблема,
в AdMob ANE от Code Alchemy есть полный пример использования практически для любой среды разработки:
- Simple Script
- Flash CS6
- FlashBuilder
- FlashDevelop
- Starling
Все исходные коды проектов доступны здесь:
- https://github.com/lancelot1/ane-admob

Я считаю, что вы можете найти там все возможные ответы, чтобы полностью интегрировать AdMob ANE от Code Alchemy в любой проект.

person Code-Alchemy    schedule 28.08.2014

У меня тоже была твоя проблема.

Я потратил много времени на поиск надежного расширения ANE для приложения AdMob in Air.

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

Затем я нашел другое расширение ANE, которое кажется более полным:
https://github.com/lancelot1/ane-admob

Это потрясающее расширение чрезвычайно обновлено до последней версии SDK, имеет множество функций и работает с первой попытки.

Я очень доволен этим.

Если вы все еще ищете подходящее расширение ANE для AdMob, я настоятельно рекомендую вам это!

person Matt    schedule 15.04.2014