Давненько не брал я в руки шашки. Знаем, знаем, как Вы играете

    Ситуация в appStore для casual разработчиков быстро меняется.
    2 года назад можно было заработать, выпуская платное приложение одновременно с бесплатным аналогом.
    После появления в магазине более 100 000 программ этот трюк стал неэффективен.
    Год назад шустрые парни стали выкладывать только бесплатные приложения, но с покупками внутри.
    Одновременно число программ в appStore перевалило за 500 000.
    В ближайшее время ( судя по финансовым отчетам 2012 года) только реклама внутри приложения принесет быстрые деньги.



    До прошлого года я использовал фирменную рекламу от Apple.
    Однако родная iAd реклама работает исключительно на территории врага.
    Чтобы добрать деньги с игроков, живущих не в США (а это минимум 25%), следует прикрутить рекламу от, скажем, Google, которая будет мелькать там, где не работает iAd.

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



    10 шагов разработчика


    Шаг раз
    Регистрируем новое приложение в тунце.
    Не забываем нажать кнопку Set Up iAd Network.
    На выходе мы получим Apple ID приложения и ссылку на программу в тунце.

    Шаг два
    Идем на сайт AdMob от Google.
    Нажимаем кнопку Add site/app, заводим рекламную компанию, для этого используем название приложения, ссылку на приложение в тунце, например как эту и Apple ID приложения из первого шага. В итоге получаем ID рекламной компании adMob и ссылку на скачивание adMob SDK для iPhone/iPad.

    Шаг три
    Идем на сайт AdWhirl. Нажимаем кнопку Add Application, вносим в поля название приложения и ссылку. Включаем рекламные компании iAd и adMob, для чего используем Apple ID приложения для iAd и ID рекламной компании для adMob. Выставляем время обновления рекламы (минимум 15 секунд) и получаем на выходе ID adWhirl компании и ссылку на adWhirl SDK для iPhone.

    Шаг четыре
    Скачиваем adMob SDK, распаковываем и добавляем директорию в проект нашего приложения. Мышкой.

    Шаг пять
    Скачиваем adWhirl SDK, распаковываем и добавляем директорию в проект нашего приложения. Снова мышкой. Заходим в директорию adWhirl SDK, идем до C-файлов и выбрасываем все, кроме содержащих в своем названии буквы iAd и adMob. Иначе проект перестанет собираться.

    Шаг шесть
    Добавляем в приложении нужные для показа рекламы библиотеки — frameworks. Их около 7, полный список содержится в файле readme, скачанном вместе с SDK. Среди библиотек будут iAd.framework, sqlite3.lib, MessageUI.framework и прочие.

    Шаг семь
    Добавляем в header нашего главного класса ViewController текст

    //  ViewController.h
    //  chapay
    //
    //  Created by vadim bashurov on 22.01.12
    //
    #import <UIKit/UIKit.h>
    #import "AdWhirlDelegateProtocol.h"
    //
    @class AdWhirlView;
    //
    @interface ViewController : UIViewController <AdWhirlDelegate> {
        AdWhirlView *adView;
    }
    //
    @property (nonatomic,retain) AdWhirlView *adView;
    - (void)adjustAdSize;
    @end
    


    Текст простой, единственная засада — не могу угловую скобку поставить, Хабр ее съедает.
    AdWhirlView — это элемент, где будут крутить рекламу.

    Наша задача только поместить AdWhirlView в такое место экрана, чтоб на него почаще нажимали. Р-р-раз, и цент на нашем счету. Миллион нажатий — миллион центов. Хорошо, нет?

    Шаг восемь
    Добавляем в тело нашего главного класса ViewController другой текст

    //  ViewController.m
    //  chapay
    //
    //  Created by vadim bashurov on 22.01.12.
    //
    #import "ViewController.h"
    #import "AdWhirlView.h"
    //#import <iAd/iAd.h>
    @implementation ViewController
    @synthesize adView;
    //
    - (void)viewDidLoad
    {
        [super viewDidLoad];
        self.adView = [AdWhirlView requestAdWhirlViewWithDelegate:self];
    	self.adView.autoresizingMask =
        UIViewAutoresizingFlexibleLeftMargin|UIViewAutoresizingFlexibleRightMargin;
    	[self.view addSubview:self.adView];
    }
    //
    #pragma mark AdWhirl
    - (NSString *)adWhirlApplicationKey {
        return @"6492f291f2214227a0af9983658704dd";
    }
    //
    - (BOOL)adWhirlTestMode {
    	return NO;
    }
    //
    - (void)adWhirlDidDismissFullScreenModal
    {
    	NSLog(@"adWhirlDidDismissFullScreenModal");
    }
    //
    - (UIViewController *)viewControllerForPresentingModalView {
    	return self;
    }
    //
    - (void)adWhirlDidReceiveAd:(AdWhirlView *)adWhirlView {
    	[self adjustAdSize];
    }
    //
    - (void)adjustAdSize {
    	[UIView beginAnimations:@"AdResize" context:nil];
    	[UIView setAnimationDuration:0.7];
    	CGSize adSize = [adView actualAdSize];
    	CGRect newFrame = adView.frame;
    	newFrame.size.height = adSize.height;
    	newFrame.size.width = adSize.width;
    	newFrame.origin.x = (self.view.bounds.size.width - adSize.width)/2;
    	newFrame.origin.y = self.view.bounds.size.height - adSize.height;
    	adView.frame = newFrame;
    	[UIView commitAnimations];
    }
    @end
    


    Комментарии не требуются — все прозрачно.

    Шаг девять
    Компилируем приложение, убираем ошибки, проверяем работу рекламы на живом устройстве. Ждем сутки, ибо adMob заработает не сразу, идет проверка наших ID и ссылок на приложение, которые мы внесли в поля регистрации.

    Шаг десять
    Выкладываем binary код на проверку в appStore и божьей милостью через пару недель начинаем ежедневно получать финансовые отчеты на сайте adWhirl или appfigures.

    Весь процесс занимает около 60-ти минут.

    По итогам продаж могу сказать
    1) реклама на iPhone приносит в 2 раза больше денег, чем покупки из приложения;
    2) реклама на iPad приносит в 5 раз больше денег, чем покупка из приложения.

    Всех с днем сурка, перцы!

    Комментарии 33

      +1
      Классная игрушка! Вот бы еще для андроид-планшетов такую!
        0
        Через неделю будет в маркете. Winphone вариант тоже на подходе. Если быстро сделаем сервер, то можно будет играть удаленно откушанным яблокам против зеленых человечков.
          –1
          готов помочь с серверной частью, если она на питоне :)
            0
            Спасибо, пока с движком не определились.
        +1
        Круть! Поздравления!
        Честно говоря, так и думала. Хотя тут вчера будущее покупок из приложения хвалили. Но — «не верю», а вот в рекламу — да.
        Жаль, для моих детских игр совсем не подходит )
          +1
          Из приложения покупают 2% скачавших. Миллион закачек принесет Вам 13.900 долларов за весь период жизни приложения. Тоже неплохо, но миллион закачек на iPad принесет 59.900 долларов в течении года при удачной игровой идее.
          0
          Поясните, а вот там мелодия из Неуловимых. Насколько в аппсторах следят за такими вот заимствованиями? Ведь по чесноку нужно что-то кому отстёгивать? У меня просто практический интерес. Из-за этой всей копирастии не берусь за приложение, которое без медиа-цитат никуда.
            +3
            Ян Френкель — великий композитор и артист.

            Музыка его бессмертна. Увы, он умер.

            Его вдова Наталия Михайловна, урождённая графиня Лорис-Меликова, актриса, умерла в середине 1990-х, дочь Нина с 1980 года проживает в Италии, внук — Ян Френкель-младший — музыкант (пианист и аранжировщик) Оркестра академии береговой охраны США, с 2011 г. директор музыкального отделения Кадетского корпуса Академии береговой охраны США.

            Они не против.

            Apple не умеет проверять русские бренды и русскую музыку.

            Ищите наследников и правообладателей, пишите им письма и выпускайте приложение.

            В 99.9% случаев наследники не отвечают.

            Или отвечают согласием — ведь мы прославляем музыку их предков.

              0
              Принято
                0
                А нет ли данных о союзмультфильме? На моё письмо они не ответили, так что даже не знаю, можно ли использовать звуки и изображения из их мультиков…
                  0
                  Увы, нет. Заимствую картинки из мультиков на свой страх и риск.
                    0
                    А жаль, жаль…
                    Но если Вы (а возможно и ещё кто-то) их используете, то могу и я попытаться, тоже рискнуть. В конце концов, если будут притензии, то программу можно и удалить, не доводя дело до юридических разбирательств с порчей нервов.
              +1
              Текст простой, единственная засада — не могу угловую скобку поставить, Хабр ее съедает.

              Исходники лучше оборачивать в тег <source lang="...">...</source>. Objective C, правда, парсер не знает, но можно поставить lang="cpp", всяко лучше будет неподсвеченного кода, да и угловые скобки не скушаются.

              А в обычном тексте можно для «уголков» использовать &lt; и &gt;.
                0
                Тысяча чертей! Долгих лет счастья Саратову и его хабражителям! Спасибо.
                +1
                Эка ты пиаришься под соусом изложения всем известных вещей :) Вадим, аплодирую!
                А приложение отличное.
                  +1
                  Прикольная игрушка, спасибо.

                  Только физика немного непривычная, в реальных шашках они как-то лучше летали. По крайней мере, выбить за раз две шашки проблемой не было, а тут практически нереально.
                    0
                    И правила какие-то простые очень. У нас, помнится, сложнее было. Не помню точно, но были какие-то штрафы, типа, если ни одну не выбил, то пропускаешь лишний ход… Было еще что-то с висящими. Типа если зависла над краем доски, то был шанс ее поддеть пальцем и если улетела с доски — то засчитывалась как сбитая.
                      0
                      Увы, лень было подключать OpenGL, а без него висящую шашку не проверишь, не покрутишь.

                      От шпионов по этой причине тоже пришлось отказаться…
                        0
                        Понятно.
                      0
                      Физика с планеты Шелезяка). Коэффициент трения жуткий. Но разностную схему надо улучшить, здесь ты прав.

                      Прошу заметить, после двух дней тренировки отдельные мастера стали выбивать одним ударом по ТРИ шашки соперника.

                        0
                        Ок, будем тренироваться :)

                        Кстати, странно слышать, что инапп-продажи приносят меньше баннеров. Я думал, с точностью до наоборот. Я сам лично практически всегда покупаю отключение баннера, если софтина хорошая.
                          0
                          Сегодня Apple одобрил и приложение для iPad. Со второй попытки. Первоначально приложение было отвергнуто по причине наличия iAd рекламы на скриншотах!!! нормально, да??!
                            0
                            Забавно. Я видел скриншоты с баннерами. Там, правда, была не реклама а заглушка вида «тут реклама iAd»
                    • НЛО прилетело и опубликовало эту надпись здесь
                        +1
                        Это вы обидеть разработчика хотели?
                        Какие же это Angry Birds, окончательно что ли на них все помешались?
                        Вы что, в «Чапаева» никогда в детстве не играли? Это же классика!
                        У вас дыра в образовании. :))

                        Чапаев существовал, ещё до появления iOS, первых эскизов злобоптиц, а может быть и до появления самих разработчиков Angry Birds.
                        • НЛО прилетело и опубликовало эту надпись здесь
                            +1
                            В таком случае, забираю свои слова обратно.
                            Просто я не понял вашей шутки.

                            Мои баталии в «Чапаева» начались позже, в году эдак 89-90.
                            С двоюродным братом убивали за лето все наборы шашек в доме, так как часть чапаевской армии обязательно терялась под кроватями, холодильниками и бермудских треугольниках.
                            • НЛО прилетело и опубликовало эту надпись здесь
                                0
                                На шахматы у нас тоже в то время извилин не хватало.
                                Начиналось всё обычно с игры в классические шашки.
                                А вот когда наши отцы удалялись из комнаты, шашки принимали боевой облик и начинались более оживленные баталии. )) Либо, играли одну — две партии в шашки, а затем плавно переходили в «Чапаева».
                                  +1
                                  Мы в Чапаева с братьями и шахматами играли. Это была смерть пальцам.
                                    0
                                    +1
                        0
                        Классная статья, спасибо большое! С юмором и по делу.
                          0
                          исключительно на территории врага

                          Это ведь вы несерьезно, я надеюсь?

                          Только полноправные пользователи могут оставлять комментарии. Войдите, пожалуйста.

                          Самое читаемое