PhoneGap это инструмент, позволяющий разрабатывать приложения на JavaScript и конвертировать их в нативные приложения мобильных платформ (такие как Android и iOS). AdMob это платформа для подключения рекламных баннеров в ваше приложения за просмотры и клики по которым можно получать деньги. Здесь я расскажу, как подключить к Android PhoneGap приложению рекламу от Google AdMob. Для этого понадобится сделать следующее
1. Зарегистрироваться в AdMob и получить Publisher ID для подключения рекламного баннера.
2. Внести изменения в Android проект для отображения рекламного баннера
2. Выбираем в меню Add Site/App
3. Выбираем Android App
4. Заполняем App Name, Category и App description. Не надо заполнять Android Package URL пока наше приложение не находится в Google Play. Оставляем это поле полностью пустым. (Нужно удалить из поля то, что там уже введено по умолчанию - это market://)
5. Нажимаем OK
6. Далее вы увидите экран на котором вам предлагают скачать AdMob Android SDK. Скачаем AdMob SDK потом, пока что нажимаем здесь Go to Sites/Apps.
7. Теперь вы видите список ваших приложений. Найдите добавленное только что приложение и наведите на его имя указатель мыши. Вы увидите появится кнопка Manage Settings. Нажимаем ее.
8. Теперь мы видим Publisher ID. его значение нужно будет вставить в качестве значения поля AdMob_Ad_Unit в нашем Android приложении.
https://developers.google.com/mobile-ads-sdk/download
После того как скачали необходимо положить скачанный файл в папку libs нашего android проекта.
1. Если работаем в Intellij Idea то нажимаем правой кнопкой по добавленному jar файлу и выбираем Add as Library...
2. Если работаем в Eclipse, то нажимаем правой кнопкой на проекте и выбираем Build Path --> Configure Build Path. Теперь выбираем вкладку Libraries и нажимаем кнопку Add Jars. Выбираем yourProject/libs/GoogleAdMobAdsSdk-*.*.*.jar
В главном java файле вашего android приложения необходимо добавить следующее.
1. Добавить к импорту
2. Добавить константу и переменную в класс
3. В методе onCreate после строчек
добавить следующие строчки
Вот как главный файл проекта выглядит у меня
Добавляем в AndroidManifest в раздел aplication следующее
Также нужно проверить чтобы в AndroidManifest в разделе manifest были строки
Вот как выглядит AndroidManifest у меня
1. Зарегистрироваться в AdMob и получить Publisher ID для подключения рекламного баннера.
2. Внести изменения в Android проект для отображения рекламного баннера
1. Регистрация в AdMob и gполучение Publisher ID для подключения рекламы.
1. Зайти на сайт http://www.google.com/ads/admob/2. Выбираем в меню Add Site/App
3. Выбираем Android App
4. Заполняем App Name, Category и App description. Не надо заполнять Android Package URL пока наше приложение не находится в Google Play. Оставляем это поле полностью пустым. (Нужно удалить из поля то, что там уже введено по умолчанию - это market://)
5. Нажимаем OK
6. Далее вы увидите экран на котором вам предлагают скачать AdMob Android SDK. Скачаем AdMob SDK потом, пока что нажимаем здесь Go to Sites/Apps.
7. Теперь вы видите список ваших приложений. Найдите добавленное только что приложение и наведите на его имя указатель мыши. Вы увидите появится кнопка Manage Settings. Нажимаем ее.
8. Теперь мы видим Publisher ID. его значение нужно будет вставить в качестве значения поля AdMob_Ad_Unit в нашем Android приложении.
2. Подключение AdMob к Android проекту
Скачать AdMob SDK можно здесьhttps://developers.google.com/mobile-ads-sdk/download
После того как скачали необходимо положить скачанный файл в папку libs нашего android проекта.
1. Если работаем в Intellij Idea то нажимаем правой кнопкой по добавленному jar файлу и выбираем Add as Library...
2. Если работаем в Eclipse, то нажимаем правой кнопкой на проекте и выбираем Build Path --> Configure Build Path. Теперь выбираем вкладку Libraries и нажимаем кнопку Add Jars. Выбираем yourProject/libs/GoogleAdMobAdsSdk-*.*.*.jar
В главном java файле вашего android приложения необходимо добавить следующее.
1. Добавить к импорту
import com.google.ads.*; import android.widget.LinearLayout;
private static final String AdMob_Ad_Unit = "xxxxxxxxxxxxxxx"; private AdView adView;
super.loadUrl(Config.getStartUrl()); //super.loadUrl("file:///android_asset/www/index.html")
добавить следующие строчки
adView = new AdView(this, AdSize.BANNER, AdMob_Ad_Unit); LinearLayout layout = super.root; layout.addView(adView); AdRequest request = new AdRequest(); // для запуска на эмуляторе можно раскомментировать //request.addTestDevice(AdRequest.TEST_EMULATOR); adView.loadAd(request);
import android.os.Bundle; import org.apache.cordova.*; import com.google.ads.*; import android.widget.LinearLayout; public class MyCoolApp extends DroidGap { private static final String AdMob_Ad_Unit = "xxxxxxxxxxxxxxx"; private AdView adView; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); // Set by <content src="index.html" /> in config.xml super.loadUrl(Config.getStartUrl()); //super.loadUrl("file:///android_asset/www/index.html") adView = new AdView(this, AdSize.BANNER, AdMob_Ad_Unit); LinearLayout layout = super.root; layout.addView(adView); AdRequest request = new AdRequest(); //request.addTestDevice(AdRequest.TEST_EMULATOR); adView.loadAd(request); } }
Добавляем в AndroidManifest в раздел aplication следующее
<activity android:configChanges= "keyboard|keyboardHidden|orientation|screenLayout|uiMode|screenSize|smallestScreenSize" android:name="com.google.ads.AdActivity" />
Также нужно проверить чтобы в AndroidManifest в разделе manifest были строки
<uses-permission android:name="android.permission.INTERNET" /> <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
Вот как выглядит AndroidManifest у меня
<?xml version='1.0' encoding='utf-8'?> <manifest android:hardwareAccelerated="true" android:versionCode="3" android:versionName="1.0.0" android:windowSoftInputMode="adjustPan" package="com.danilov.mycoolapp" xmlns:android="http://schemas.android.com/apk/res/android"> <supports-screens android:anyDensity="true" android:largeScreens="true" android:normalScreens="true" android:resizeable="true" android:smallScreens="true" android:xlargeScreens="true" /> <uses-permission android:name="android.permission.INTERNET" /> <application android:debuggable="true" android:hardwareAccelerated="true" android:icon="@drawable/icon" android:label="@string/app_name"> <activity android:configChanges="orientation|keyboardHidden|keyboard|screenSize|locale" android:label="@string/app_name" android:name="Badlibs" android:theme="@android:style/Theme.Black.NoTitleBar"> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> <activity android:configChanges="keyboard|keyboardHidden|orientation|screenLayout|uiMode|screenSize|smallestScreenSize" android:name="com.google.ads.AdActivity" /> </application> <uses-sdk android:minSdkVersion="10" android:targetSdkVersion="17" /> <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> <uses-permission android:name="com.android.vending.BILLING" /> </manifest>
Посмотрите здесь:
ОтветитьУдалитьhttp://habrahabr.ru/sandbox/76024/
http://kluchnik-soft.livejournal.com/966.html
http://freehabr.ru/blog/android/11287.html
Отлично, спасибо большое автору! Вот только AdMob_Ad_Unit - это не Publisher ID, а Идентификатор рекламного блока (после того, как добавляем приложение и создаем рекламный блок для приложения, появляется его идентификатор)
ОтветитьУдалитьAdmob это не очень хороший вариант, я заработал с Admob 57$ за месяц, а когда переключился на StartApp то заработал уже 175$ , с теми самими приложениями, улавливаете разницу друзья.
ОтветитьУдалитьЧестно сказать я не только с Admob работал, я много рекламных сетей перепробовал такие как (AppWizh, Admob, Revmob, TapJoy, TapContext) но сейчас я использую только Startapp.
Здесь я зарабатываю намного больше чем в других сетях. В среднем 500$ - 750$ USD в месяц . Доходность раза в 5 выше чем в других партнерках. Еще они дают хорошие бонусы для новых разработчиков.
Я получить бонус 50$ в течение первых 1000 загрузок зарегистрировавшись по этой ссылке :
http://startapp.com/rfhwarh
Удачи!!!!