Добавление Рекламы Admob В Приложение Android На Платформе Adobe Air

После того, как я разработал свое первое, простейшее приложение для Андроид на Adobe Эйр , мне хотелось добавить туда рекламу, хотя бы для того, чтобы в будущем знать, как это делается.

Я потратил на это довольно много времени, так и не найдя ничего об этом в Интернете на русском языке.

Поэтому я решил написать краткое руководство к действию для тех, кому оно еще нужно.

Добавим рекламу от Google Реклама в приложении .



1. Загрузите АН?

Для работы со сторонними сервисами (AdMob, GameCenter и т. д.), а также с некоторыми техническими возможностями устройств (гироскоп, вибрация и т. д.) Adobe предлагает использовать Adobe Native Extensions (ANE) — нечто похожее на внешние библиотеки.

ANE — это файлы с расширением .

ane, содержащие описания классов.

Сценарий действия 3 , с которым вы можете взаимодействовать после подключения расширения.

На сайте ( Adobe ) есть список рекомендуемых ANE, разработанный как разработчиками компании, так и сторонними разработчиками.

Что касается AdMob, Adobe предлагает только коммерческие ANE от Milkman Games (29,99 долларов США на момент написания статьи) и distriqt (40 долларов США на момент написания статьи) для взаимодействия с этим сервисом.

Конечно, у меня не было желания платить такую сумму и я отправился в путешествие по Интернету в поисках бесплатной версии.

Поиск в конечном итоге привел к AdMobAne от Code-Alchemy. Это расширение общедоступно по адресу в репозитории GitHub .

Скачиваем его архивом, распаковываем, находим папку «anes_builds», выбираем нужный файл ANE (в зависимости от того, пишете ли вы приложения для Android, iOS или обеих платформ) и отправляем в папку с вашим проектом.



2. Подключите АН?

Теперь подключаем АН? к проекту.

Если вы используете Flash Professional, вам нужно будет перейти на страницу настроек ActionScript 3.0, затем нажать кнопку «Перейти к собственному расширению (ANE)» и указать путь к файлу .

ane:

Добавление рекламы AdMob в приложение Android на платформе Adobe Air



Добавление рекламы AdMob в приложение Android на платформе Adobe Air

Расширение должно теперь появиться в списке ниже.



3. Отредактируйте манифест приложения.

Чтобы успешно вставить рекламу в ваше приложение, вы должны сначала объявить в манифесте, что приложению требуется доступ в Интернет, а во вторую очередь добавить новую активность.

Добавьте в манифест следующие строки:

  
  
  
  
  
  
  
   

<manifestAdditions> <![CDATA[<manifest> <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"/> <application> <meta-data android:name="com.google.android.gms.version" android:value="4452000"/> <activity android:name="com.google.android.gms.ads.AdActivity" android:configChanges="keyboard|keyboardHidden|orientation|screenLayout|uiMode|screenSize|smallestScreenSize" /> </application> </manifest>]]> </manifestAdditions>

Для успешного анализа манифеста синтаксическим анализатором необходимо использовать AIR версии не ниже 3.4. , если вы используете более старую версию, то получите неприятную критическую ошибку.

Кроме того, вам необходимо периодически следить за тем, чтобы после очередной публикации приложения в манифесте остались строки, описывающие новую активность (то, что вы только что добавили), так как после изменения настроек публикации Flash может автоматически переписать манифест и удалите их – и вам придется долго и упорно искать ошибку.

Также проверьте, что ваш манифест содержит следующее:

<extensions> <extensionID>com.codealchemy.ane.admobane</extensionID> </extensions>



4. Напишите код

Подробное описание классов, методов и свойств приведено по адресу Страница ANE на GitHub .

Расскажу, как создать обычный баннер: 1. Импортируйте необходимые классы.



import com.codealchemy.ane.admobane.AdMobManager; import com.codealchemy.ane.admobane.AdMobPosition; import com.codealchemy.ane.admobane.AdMobSize;

2. Получаем менеджера.



var adMobManager:AdMobManager; adMobManager = AdMobManager.manager;

3. Проверьте, поддерживается ли класс AdMobManager.

if (adMobManager.isSupported) { .

}

4. Если поддерживается: установите режим работы PROD_MODE (производство - отладка недоступна), укажите ID баннера, создайте баннер с размером BANNER и позицией BOTTON_CENTER (определено в классах AdMobSize и AdMobPosition).

NULL указывает, что мы используем ранее указанный идентификатор баннера; вы можете указать другой идентификатор вместо NULL. True указывает, что баннер будет показан сразу после загрузки.

«BottomBanner» — идентификатор баннера в нашем приложении (придумываем сами).



adMobManager.operationMode = AdMobManager.PROD_MODE; adMobManager.bannersAdMobId = "ca-app-pub-3036271947968278/6206838142"; adMobManager.createBanner(AdMobSize.BANNER,AdMobPosition.BOTTOM_CENTER,"BottomBanner", null, true);

Не забудьте изменить ID баннера на свой.



Добавление рекламы AdMob в приложение Android на платформе Adobe Air

5. Для того, чтобы скрыть или показать баннер, мы используем следующие методы:

adMobManager.showBanner("BottomBanner"); adMobManager.hideBanner("BottomBanner");

Создаем полноэкранную рекламу аналогично:

adMobManager.interstitialAdMobId = "ADMOB_INTERSTITIAL_ID"; adMobManager.createInterstitial(null,true);

Доступные позиции для баннера: TOP_LEFT, TOP_CENTER, TOP_RIGHT, MIDDLE_LEFT, MIDDLE_CENTER, MIDDLE_RIGHT, BOTTOM_LEFT, BOTTOM_CENTER, BOTTOM_RIGHT. Доступные размеры: BANNER, MEDIUM_RECTANGLE, LARGE_BANNER, FULL_BANNER, LEADERBOARD, WIDE_SKYSCRAPER, SMART_BANNER, SMART_BANNER_PORT, SMART_BANNER_LAND.

5. Вывод

Это расширение позволяет настраивать возраст целевой аудитории, прослушивать события и многое другое.

Обо всем этом вы можете прочитать на GitHub. Спасибо за внимание.

Теги: #admob #air #adobe #Android #flash #Adobe Flash #Разработка Android #Скрипт действий

Вместе с данным постом часто просматривают: