Монетизация iOS-приложений с помощью ONE by AOL: Mobile
Монетизация с помощью мобильной рекламы является благом в современной экономике приложений, и с платформой ONE by AOL: Mobile вы получаете доступ к ведущим мировым рекламодателям брендов, мгновенно вкладывая деньги в свой карман! Во второй части этой серии статей о мобильной рекламе 101 мы сосредоточимся на платформе iOS и рассмотрим:
- Интеграция SDK
- Конфигурация проекта
- Общие ловушки
Если вам нужно настроить учетную запись в ONE Mobile или интегрироваться с платформой Android, вы можете ознакомиться с Частью I этого руководства.
Часть I. Монетизация приложений Android с помощью ONE by AOL: Mobile
Это руководство не будет глубоким погружением в разработку iOS, поэтому некоторые части создания приложений будут пропущены. Если вам нужна помощь в этом, есть много руководств, доступных как для Objective-C, так и для Swift. Кроме того, весь код, указанный в этом руководстве, можно найти на моем GitHub.
Отказ от ответственности. Хотя я работаю в AOL, этот блог создан по моей собственной воле и не является одобрением со стороны AOL каких-либо организаций, не входящих в AOL, которые могут быть процитированы
Интеграция SDK
В этом руководстве пример приложения, используемый в качестве примеров, написан с использованием Objective-C и будет доступен на GitHub. В нем дается общий обзор того, как интегрируются объявления, но детали могут различаться в зависимости от приложения. Не стесняйтесь клонировать или загружать этот репозиторий и работать с приложением самостоятельно.
Добавьте SDK и необходимые платформы в свой проект
Для начала перейдите на сайт для разработчиков ONE Mobile, чтобы загрузить мобильный рекламный SDK. Этот сайт также содержит документацию по настройке, заметки о посредничестве и другие полезные сведения. После загрузки поместите SDK в легкодоступное место, так как вам нужно будет интегрировать его в свой проект.
Откройте проект в Xcode, выберите каталог верхнего уровня в Навигаторе проектов и перейдите на вкладку Фазы сборки. В нижней левой части подраздела Link Binary With Libraries нажмите знак + и убедитесь, что включены следующие платформы:
После добавления фреймворков вы можете использовать кнопку Добавить другое… в том же окне, чтобы перейти туда, куда вы загрузили SDK, и выбрать MMAdSDK.framework. После добавления SDK убедитесь, что он включен в Target Membership приложений. Это можно сделать, щелкнув фреймворк и установив флажок рядом с именем приложения в Инспекторе файлов на панели Утилиты (крайний правый столбец).
Настройте Info.plist и установите флаг компоновщика
Список информационных свойств, или Info.plist, — это структурированный текстовый файл, который содержит важную информацию о конфигурации, необходимую для запуска вашего приложения. Мы добавим в этот список несколько новых свойств, чтобы соблюдать правила, установленные Apple для iOS 10+. К ним относятся запросы на использование календаря, камеры, местоположения, библиотеки фотографий и напоминаний. Это необходимо вашему приложению для полной поддержки Бюро интерактивной рекламы MRAID v2.0. Наряду с этим мы добавим свойство, позволяющее показывать рекламу с включенной безопасностью транспорта приложений. Скриншот и код приведены ниже:
Последняя часть настройки включает установку флага Linker. Для этого необходимо перейти на вкладку Настройки сборки, прокрутить вниз до подраздела Связывание и добавить -ObjC
в качестве значения Другие флаги компоновщика.
Установите SiteID и инициализируйте SDK
После завершения настройки проекта мы установим наш SiteID и инициализируем SDK, чтобы мы могли начать запрашивать и показывать рекламу. Для этого мы изменим наш AppDelegate.m
, включив в него следующее:
Встроенные объявления
Теперь, когда интеграция SDK завершена, мы рассмотрим показ встроенной рекламы. Встроенная реклама принимает форму баннера (320 x 50) или средних прямоугольников (320 x 250) в мобильных приложениях и отображается вместе с другим контентом приложения. В этом руководстве мы предполагаем, что баннер должен отображаться в своем собственном BannerViewController
, что, скорее всего, будет отличаться в вашем приложении. Мы будем использовать кнопку для перехода от HomeViewController
к BannerViewController
и другую кнопку для запроса рекламы, но мы не будем углубляться в это в этом руководстве.
Для этого мы должны отредактировать как реализацию BannerViewController
, так и файлы заголовков. Заголовок объявит контейнер для рекламного контента и встроенного объявления.
В файле реализации задается размер объявления вместе с нашим PlacementID. В этом примере также реализована кнопка, хотя в вашем приложении реклама, скорее всего, будет загружаться через другой механизм.
Это завершает ваш первый рекламный баннер. Далее мы будем работать через межстраничные объявления!
Межстраничные объявления
Межстраничные объявления — это полноэкранные объявления, которые отображаются поверх контента вашего приложения. Обычно они происходят во время перерывов в игре или перед тем, как пользователю показываются другие типы контента. Мы предполагаем, что межстраничное объявление должно отображаться в собственном InterstitialViewController
для этого примера, что, скорее всего, будет отличаться в вашем приложении.
Как и в случае с баннерами, нам нужно будет отредактировать как файлы заголовка, так и файлы реализации. В отличие от баннеров, поскольку межстраничные объявления располагаются над контентом, нам не понадобится контейнер для размещения рекламы. Вместо этого мы создадим кнопки для показа и запроса рекламы. В большинстве приложений межстраничные объявления предварительно загружаются в фоновом режиме, чтобы улучшить взаимодействие с пользователем, и эти кнопки будут имитировать это поведение. В этом примере мы объявим промежуточное объявление только в нашем заголовке.
В файле реализации устанавливается наш PlacementID и реализуются наши кнопки. Как упоминалось ранее, ваше приложение, скорее всего, будет загружать рекламу через другой механизм.
Благодаря этому вы сможете размещать межстраничную рекламу на iOS и будете зарабатывать деньги в кратчайшие сроки!
Общие ловушки
- Реклама будет заблокирована, если ваше приложение использует ATS, но вы не установили
NSAllowsArbitraryLoads
в YES.