пятница, 17 февраля 2012 г.

Android Training-Монетизация приложения-Реклама

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

Реклама без ущерба для User Experience.

Реклама - это один из способов монетизации мобильных приложений. Мы рассмотрим как встроить баннер в ваше Android приложение.

В этом уроке наше приложение использут сеть AdMob, но платформа не ограничивает вас в выборе мобильной рекламной сети. Насколько это возможно урок показывает общие принципы, которые подобны у различных сетей.

Например, каждая рекламная сеть может иметь специфические настройки сети, как гео-локация или размер текста для баннера, которые могут быть установлены только в этой сети. Урок не затрагивает этих тем и вам стоит просмотреть документацию вашей сети перед использованием.
Получение учетной записи издателя и AD SDK
Для интеграции рекламы в ваше приложение прежде всего вам необходимо стать издателем, путем регистрации учетной записи издателя в мобильной рекламной сети. Обычно, идентификатор предоставляется для каждого приложения содержащего мобильную рекламу. Это то, как рекламная сеть коррелирует рекламу показываемую в приложениях. В случае с AdMob, идентификатор известен как Publisher ID. В случае других сетей вам необходимо будет получить консультацию.

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

Большинство рекламных сетей предоставляют SDK как JAR файл. Установка его не отличается от интеграции других JAR файлов сторонних разработчиков. Копируем JAR файлы в папку libs/ проекта. При использовании Eclipse IDE, стоит добавить JAR файл в Build Path(Properties > Java Build Path > Libraries > Add JARs.).


Рисунок 1. Настройка Build Path в Eclipse.
Установка необходимых разрешений.

Т.к. мобильная реклама распространяется по сети, SDK обычно требуют обьявления соотвествующих разрешений в Android manifest файле. Другие типы разрешений тоже могут потребоваться.
Например тут мы запрашиваем INTERNET разрешение:
</manifest>
    <uses-permission android:name="android.permission.INTERNET" />
    ...
    <application>...</application>
</manifest>
Настройка размещения объявления.
Баннерная реклама чаще всего реализуется как пользовательский WebView .Кроме того она может быть представлена в различных размерах и формах. После того, как вы решили разместить рекламу в вашем приложении вы можете добавить ее в XML разметку вашей activity. XML сниппет ниже иллюстрирует баннерный блок вверху экрана:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
        android:id="@+id/ad_catalog_layout"
        android:orientation="vertical"
        android:layout_width="match_parent"
        android:layout_height="match_parent" >
    <com.google.ads.AdView
        xmlns:googleads="http://schemas.android.com/apk/lib/com.google.ads"
        android:id="@+id/ad"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        googleads:adSize="BANNER"
        googleads:adUnitId="@string/admob_id" />
    <TextView android:id="@+id/title"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:text="@string/banner_top" />
    <TextView android:id="@+id/status"
        android:layout_width="match_parent"
        android:layout_height="wrap_content" />
</LinearLayout>

Рисунок 2. Скриншот с баннерным блоком в приложении Mobile Ads.
Вам стоит рассмотреть возможность использования альтернативных размеров баннеров, в зависимости от текущей конфигурации оборудования-размера экрана или его ориентации. Это может быть достигнуто при помощи использования альтернативных ресурсов(providing alternative resources). Для примера, указанная вверху разметка может быть помещена в папку res/layout/ directory как разметка по умолчанию. Если доступны бОльшие размеры баннеров вы можете использовать их для "large" и выше типов экранов. Для примера, следующий сниппет происходит от файла разметки в res/layout-large/ папке и отображает более крупный баннер для крупных экранов:

...
<com.google.ads.AdView
    xmlns:googleads="http://schemas.android.com/apk/lib/com.google.ads"
    android:id="@+id/ad"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    googleads:adSize="IAB_LEADERBOARD"
    googleads:adUnitId="@string/admob_id" />
...
Обратите внимание, что имя view и его параметры конфигурации зависят от используемой рекламной сети. Ad сети могут поддерживать конфигурации при помощи атрибутов XML разметки как показано выше, времени выполнения API, или обе. В нашем приложении, Mobile Ads, размер баннера AdView (googleads:adSize) и publisher ID (googleads:adUnitId) устанавливаются в XML разметке.
Когда принимается решение о том, куда поместить баннер в вашем приложении стоит внимательно оценивать работы пользователя с UI. Например, вам не стоит заполнять экран множественными баннерами, это будет раздражать ваших пользователей. Кроме этого, подобная практика часто приводит к бану в некоторых рекламных сетях. Кроме того, следует избегать помещения баннеров слишком близко к элеметам управления для избежания случайных баннер-кликов. Рисунки 3 и 4 иллюстрируют, чего следует избегать:
Рисунок 3. Баннер слишком близко к кнопке.

Рисунок 4.Баннер перекрывает собой содержание.
Включение тестового режима.
Некоторые ad-сети предоставляют тестовый режим. Это полезно в процессе обработки и тестирования, когда ad impression и click не считаются. Не забудьте выключить тестовый режим перед публикацией сообщения.
Реализации обработчиков событий рекламы.

По возможности стоит реализовать обработчики событий рекламы, которые предоставляют callbackи на различные события, связанные с обработкой рекламы, отображаемой в элементе управления рекламы.В зависимости от ad-сети, в нем можно обрабатывать такие события, как время перед загрузкой рекламного блока, время после загрузки, ошибку при загрузке блока и др.Например, если рекламный блок не загрузился вы можете отобразить свой собственный баннер или создать разметку, которая будет заполнять содержимым остаток экрана
Для примера, вот несколько событий, доступных в интерфейсе AdMobа AdListener:
private class MyAdListener implements AdListener {
    ...

    @Override
    public void onFailedToReceiveAd(Ad ad, ErrorCode errorCode) {
        mAdStatus.setText(R.string.error_receive_ad);
    }

    @Override
    public void onReceiveAd(Ad ad) {
        mAdStatus.setText("");
    }
}


Оригинальный материал доступен по адресу.

1 комментарий:

  1. Для того, чтобы реклама была эффективна, вам необходимо привлечь как можно больше пользователей! с этим можем вам помочь! http://advertmobile.net/

    ОтветитьУдалить