Мой опыт разработки/продвижения/поддержки. Perfect Ear

    Здравствуйте, коллеги,

    наконец-то у меня дошли руки написать немного о своем опыте на примере моего главного на сегодняшний день приложения Perfect Ear (в русском маркете известного как Абсолютный Слух).

    Образовательное приложение, являющееся сборником упражнений для тренировки слуха. Приложение, как не трудно догадаться, охватывает весьма узкий круг потребителей, тем не менее, мне удалось достичь определенного успеха с ним. Оно 2 недели пробыло в списке featured приложений, о чем более детально расскажу далее.

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

    В конце приведу некоторые цифры.



    Немного о приложении


    Приложение Perfect Ear, как не трудно догадаться, предназначено в основном для музыкантов. Суть приложения сводится к ряду упражнений для развития слуха. Всего их 6:
    • Сравнение интервалов
    • Определение интервалов
    • Определение ладов
    • Определение аккордов
    • Последовательности аккордов
    • Пение интервалов

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

    Вкратце — большинство упражнений состоят из прослушивания МИДИ звука, и выбора определенного ответа. Одно упражнение включает в себя необходимость пропеть ноту в микрофон телефона.



    Разрабатывал приложение я один как персональный проект. А вообще, я работаю на полную ставку в IT компании, где также занимаюсь Android разработкой последние полгода, до этого занимался web джавой, а Андроид изучал самостоятельно.

    Дизайн выполнялся отдельно за деньги.

    Разработка


    Итак, разработка приложения заняла у меня около 2 месяцев работы по ~4 часа в день. Позволю перечислить несколько главных на мой взгляд моментов.

    Динамическая генерация миди

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

    У меня было 2 варианта:
    • семплы
    • МИДИ

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

    Поэтому я остановился на МИДИ. Как всегда, куда ни кинь — всюду клин. На Android нету АПИ, поддерживающего генерацию МИДИ. Т. е. ну никак нельзя синтезировать нотку. Точнее, детальный анализ показал, что можно, но это требует использования закрытого нативного API платформы, чего мне делать совсем не хотелось.

    В итоге, все кончилось тем, что я, тщательно изучив формат MIDI, написал собственную небольшую open source библиотечку, реализующую нужную мне часть протокола. Библиотечка предоставляет простой API для указания ей того, что я хочу услышать, на выходе — .midi файл. Их, к счастью, media framework в состоянии открывать и воспроизводить.

    Пение интервалов

    Пожалуй, это самый интересный момент во всем приложении. Я никогда прежде не имел дело с подобными задачами, никогда не занимался обработкой звука и слова «преобразование Фурье» для меня были скорее отголоском университетских лет.

    Я пытался найти фрилансера, который мне бы помог. К сожалению, я потратил достаточно много денег на это, и в итоге получил ничего, кроме ужасно медленной и крайне неточной реализации. Этот момент навсегда оттолкнул меня от работы с фрилансерами программистами.

    Кончилось все тем, что я все же взялся за изучение темы, нашел open source примеры, разобрался в них, и на их основе сделал эту функциональность.

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

    Поддержка планшетов

    Интересная тема. Собственно, как только вышла планшетная версия, я немедленно задумался об оптимизации приложения под планшет. Но долгое время, ввиду недостатка времени и ужасного эмулятора Honeycomb откладывал эту работу.

    Но, спустя некоторое время, решил, что пора покупать планшет и переделывать приложение. Купил себе Galaxy Tab 10.1.

    Оптимизация приложения выполнялась при помощи Compatibility Library и заняла около 16 часов работы: код всех activity был перенесен во фрагменты, а activities стали выполнять роль координации фрагментов. Т. е. когда приложение открывалось на планшете — можно показать несколько фрагментов, иначе — по фрагменту на экран.



    Графика и дизайн


    Как раз в это время, когда понадобился дизайн, был на GDD2010, где послушал советы по дизайну от Романа Нурика во время его доклада, а также немного пообщался после.

    Вдохновленный его советами решил найти дизайнера. Нашел форум, где обитают дизайнеры, и просто написал, что нужен человек, который может помочь, т. з. в личку. Спустя час-другой отозвался один товарищ, я кинул ему ТЗ, а также мои корявые наброски UI. Мы договорились, мне понравилось, и решил работать дальше с ним.

    Работу он выполнил. Но явно было видно, что человек не знаком с платформой. Пожалуй, это самая большая проблема при поиске дизайнеров: они не знают, как работает платформа, особенно, как она работает с ресурсами. Я говорю о таких тонкостях, как nine-patches, *dpi, state-list и т. д.

    В 90% случаев, как и в моем, приходится обрабатывать полученные дизайнером файлы самому. Что требует порой значительного времени. Поэтому я составил для себя обязательный список деталей, которые теперь обязательно обсуждаю с дизайнерами, уверяющими, что имеют опыт работы с андроидом:
    • знают ли они, что такое nine patch drawable, будут ли они их делать
    • знают ли они требования и guidelines платформы
    • понимают ли, что контролы могут иметь различные состояния, и что они должныв их всех сделать + пункт 1

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

    Публикация и продвижение


    И вот, наконец, настал тот день, когда я опубликовал свое детище.

    Сразу скажу, что сделал я это неправильно — в рабочий день, когда надо публиковать в начале выходных, т. к. новое приложение какое-то время будет находиться в списке новых и более заметно.

    Опубликовал я 2 версии — бесплатную, содержащую не все упражнения (одно упражнение не входило в состав, а также не было фичи создания кастомных упражнений).

    Утром следующего дня я зашел в консоль и увидел одну звезду с комментом «i hate it»… Ну вот и все, подумал я. Никто больше не будет его брать. Итак, что же я сделал, чтобы выйти из этой ситуации?

    Сначала я хотел закрыть приложение, доработать, и выложить под другим именем, мол «you are not prepared». Но вскоре начали появляться 5-звездные рейтинги, но без комментов. Я подумал, что все же многим нравится, но поганый коммент вверху все равно портит первое впечатление. Поэтому я сделал так, чтобы через некоторое время в бесплатной версии показывался диалог, просящий пользователей проголосовать. Это дало замечательный результат: рейтинги посыпались дождем, преимущественно хорошие — 4-5 звезд, но, куда без них, немного и плохих было. Приложение резко поплыло вверх.

    Так что я считаю это обязательным компонентом продвижения. Не нахально, а скромно попросить пользователя проголосовать, если им нравится, чтобы помочь остальным найти это чудо. Но мы-то с вами знаем :).

    Какие еще действия я предпринял для продвижения:
    • Facebook страничка
    • Веб-сайт и его продвижение через AdWords
    • умеренная AdMob реклама
    • House Ads для продвижения платной версии из бесплатной
    • Перевод на русский, испанский

    В итоге, платное приложение медленно но верно начало двигаться вверх, и осело на 1-2 странице раздела образование.

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

    Также нет-нет, да грешу «пустыми» апдейтами. Как бы Гугл не отпирались, я явно вижу, что апдейты дают небольшой временный прирост скачиваний. Однако, не стоит, конечно, делать это слишком часто, так как пользователям не нравится, когда нужно обновлять приложение часто, а видимого эффекта нет.

    You're Featured, baby

    Для меня это, конечно же тайна, но есть ряд подозрений, которыми хотел бы поделиться.

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

    В любом случае, там мое приложение провисело ровно две недели.

    Поддержка


    Самый важный этап, который начинается после публикации — это поддержка.

    Опубликовав приложение, Вы подписываетесь на то, что будете всегда готовы выслушать злобных юзеров и подсказать им, что бы они Вам не написали. Каждый день читать новые рейтинги в поисках возможных проблем. Чем больше Вы это будете делать, тем больше Вас будут любить.

    Пользователи будут писать Вам на мыло. Обязательно отвечайте им и старайтесь помочь. Каждый такой довольный в итоге пользователь — это пятерка в рейтинге, и потенциал для роста. В моем случае — довольный музыкант расскажет другу музыканту, учитель посоветует детям — музыкантам (да-да, мне действительно писали с своими советами преподаватели музыки из Америки).

    Трекинг ошибок

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

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

    В Perfect Ear я отслеживаю ошибки через Google Analytics. Т. е. стоит у кого-то вылетель эксепшну, я тут же посылаю событие с описанием ошибки, строкой, и т. п.

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

    Статистика

    Для ведения статистики я использую Google Analytics. Есть специальный SDK, позволяющий узнать, что в Вашем приложении пользуется популярностью, а что нет.

    Монетизация


    Монетизировать приложение я решил стандартной схемой: продажи. Я делаю платную и бесплатную версии, бесплатная с ограниченным функционалом, платная — полная.

    Реклама при таких объемах не только бессмысленна, но и губительна, т. к. только раздражает пользователей.

    Важно заметить, что здесь очень важен баланс между бесплатной и платной версией. Если Вы включите почти все в бесплатную, Вам очень трудно будет заинтересовать пользователей в апгрейде. Если наоборот — у них будет недостаточно информации для решения. На мой взгляд очень важно оставлять «крючки» в бесплатной версии.

    Например, упражнение «Пение Интервалов» у меня только в платной версии, но в бесплатной я не убрал пункт меню, а оставил его. Пользователь жмет на него и видит диалог, в котором описывается, какое это замечательно упражнение и кнопка «Купить».

    Затраты/прибыль


    Да, это приложение нишевое, и много на нем не заработать, но, приведу все же некоторые цифры.

    Примерные затраты

    • $25 — взнос Google
    • $50 — дизайн
    • $250 — AdMob суммарные затраты за все время
    • $300 — мои бесполезные затраты на фрилансеров с FFT
    • $30 — кампания в AdWords
    • $50 — регистрация домена perfectearapp.com и создание почтового ящика через GoDaddy.com
    • $50 — консультация с юристом по налоговому вопросу
    • $600 — Galaxy Tab
    • $1355 — Total

    Доходы

    В первые месяцы приложение не приносило практически ничего. Потом, после продвижения в топ категории пошла прибыль около 300 долларов в месяц и постепенно стала расти до 500-600 долларов в месяц к лету. Сейчас в среднем — 20-35 долларов в день, доход держится в районе 700-900 долларов в месяц.

    За две недели в разделе featured доходы составляли от 300 до 500 долларов в день, т. е. фактически, за эти 2 недели я окупил все затраты 4 раза.

    Очень хороший стимул продолжать работать.

    Вывод денег


    Я осуществляю по стандартной схеме: AdSense-Рапида-банк. У меня есть отдельная статья про это.

    Итог


    Заработать инди деву на Андроиде можно. Мои наблюдения сейчас, что Маркет только начинает становиться на ноги, каждый день становится все больше и больше приложений от именитых контор: EA, Disney, и т. д. Это свидетельствует, что Андроид, наконец получает признание, а это, обязательно, будет выводить Маркет на новый уровень.

    Все это я пишу после того, как увидел комментарии людей, типа «нельзя окупить свои траты в Android». Можно, и Андроид достаточно жизнеспособен как способ заработка.

    Сейчас пишу свою собственную игру, посмотрим, что из этого выйдет.

    Надеюсь, Вы нашли статью полезной, если есть какие-то вопросы — с радостью отвечу в комментариях.

    Средняя зарплата в IT

    110 000 ₽/мес.
    Средняя зарплата по всем IT-специализациям на основании 8 605 анкет, за 2-ое пол. 2020 года Узнать свою зарплату
    Реклама
    AdBlock похитил этот баннер, но баннеры не зубы — отрастут

    Подробнее

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

      +4
      Отличная success-story! Мотивирует.
        0
        Спасибо за очень информативный пост!
        А распределение дохода по странам не скажете?

        Но имхо на ios вы бы заработали в 10 раз больше.
          +2
          В статистике по платной версии вот такие цифры:

          1 США 54,2%
          2 Великобритания 5,1%
          3 Германия 4,1%
          4 Россия 3,8%

          Насчет iOS — вполне возможно, но я не владею разработкой под iOS, к сожалению, и никак не дойдут руки этим заняться. Плюс, на iOS уже есть похожее приложение, на то время, что я выпустил PE, аналогов такого уровня в Маркете не было.
            0
            Спасибо за ответ! А приложение стоит на 2ом экране Education в США? Или в РФ?

            Сорри, андроид-дивайсов у меня нет…
        0
        Интересно.
        Вопрос про Трекинг Ошибок. На Маркете есть своя система, которая даёт пользователям делиться трейсами и описанием ошибок. Тут в статье я вижу что трекинг делался через Analytics.
        Почему не понравился встроенный метод Маркета? Только тем, что не все пользователи идут на этот или ещё чем-то?

        Другой вопрос: как реально заставить пользователей писать в поддержку? У меня это самая большая проблема.
        В приложении даже есть кнопка Contact Support, но народ всё равно оставляет одну звезду и пишет что типа они всё делали по инструкции, а оно не работает. И это не смотря на то, что большинство отзывов положительные.
          +3
          Своя система не плоха, но она работает только в том случае, если пользователь САМ отправит отчет. Т. е., когда у него выскочит ошибка, у него будет выбор — отправлять или нет. Отправляет настолько ничтожный процент, что к тому времени, как кто-то отправит что-то действительно полезное, Вы можете получить десяток «звезд».

          просто как пример, в другом моем приложении Perfect Scales, менее популярном, как-то закралась ошибка, которая валила приложение. Вот, и проснувшись утром, я увидел полторы сотни писем от моего трекинга и один репорт на маркете. Вот она и разница.

          «В приложении даже есть кнопка Contact Support, но народ всё равно оставляет одну звезду и пишет что типа они всё делали по инструкции, а оно не работает.»

          вот именно! Они такие, и НИ-ЧЕ-ГО с ними не сделаешь, они люди, часто далекие от IT, часто неуравновешенные, и считают, что за их баксик им слиток золота должен быть. Градус неадеквата среди комментов зачастую просто зашкаливает.

          Вы их не заставите, но я всегда в описании пишу, мол, «если у вас проблема, не паникуйте, и напишите мне по такому-то имейлу, мы все поправим».
            +2
            Хм баксик тут и за бесплатно убить могут.
              0
              Во-во. Я на бесплатных получаю иногда такую ерунду в виде одной звезды и комментария не по делу.
              0
              Это я пишу, что бы контактировали… Но ведь обычно этот народ читать не любит, поэтому они и не в курсе что автор, оказывается, их слушает.
              У меня в описании достаточно полезной инфы, что бы было понятно что и как. Но судя по комментариям, одно-звёздочники не читают описание вообще (чукча не читатель, чукча писатель :-) ).

              Самое обидное, что с ними нельзя даже связаться и объяснить как это работает и как это можно исправить. Так как зачастую проблема может даже не связана напрумую с приложением.
              +1
              кроме того, мой метод не замещает, а дополняет Маркетовскую систему :)
                0
                Я почему-то подумал что это именно вместо, а не вместе.
                Надо будет тогда попробовать.

                А так вообще я глаз положил на такую штуку:
                code.google.com/p/acra/
                  +1
                  Да, акра — удобная библиотека — одну аннотацию поставил, и она шлет Ваши ошибки и кучу другой инфо. Но я о ней узнал уже после того, как сделал)) А вообще, я посмотрел ее код, в общем, там тот же принцип, просто развитый до уровня фреймворка — ставить глобальный обработчик исключений, и обрабатывать его как удобно.
              0
              Классная программа! Пользовался и продолжаю пользоваться.

              Есть небольшой баг: если упражнение проходится повторно и после него возвращаешься в меню, то результат не обновляется.

              Хотелось бы сэмплов пианино вместо миди. Миди звучит слишком искусственно. Сэмплы можно закачивать опционально. Найти их можно в торрентах я думаю. Или скачать какой-нибудь виртуальный инструмент из тех же торрентов (например Pianoteq) и записать отдельные ноты.
                +2
                Спасибо.

                Сэмплы с торрентов у меня вызывают опасения лицензионного характера. Надо помнить, что основной потребитель — западный, а у них с этим строго.
                  0
                  Так пусть юзер сам загружает сэмплы — если не хочет MIDI. А где он их возьмёт — купит или на торрентах скачает — будет на его совести.
                    +1
                    Идея конечно интересная, но…

                    Вы хотя бы представляете, какую тут придется делегировать работу пользователю? Начать с того, что семплы надо обработать, поместить в нужное место в нужном формате, с нужным именем каждого файлика, чтобы программа смогла их найти и использовать. Даже если сделать супер подробную инструкцию, я сомневаюсь, что хоть кто-то станет морочиться. Скорее всего прочтут, офигеют, поставят 1 звезду с комментом «надо плясать с бубном, чтобы заработало».
                      0
                      Можно сделать поддержку разных форматов сэмплов в программе, их не так много.
                      Хотя бы парочки распространённых. Тогда юзеру достаточно будет скачать/купить эти сэмплы и указать к ним путь.
                  +1
                  баг посмотрю, спасибо
                  0
                  Да, сильно. Сейчас тоже в процессе написания своего маленького проекта. Но времени мало и по пути приходится учить фреймворк, идёт медленно. Хорошо что неплохие знания java есть.
                    0
                    Может посоветуете статьи или что-нибудь другое по маркету, продвижению? А то в про разработку легко искать, а про маркетинг не очень.
                      +1
                      Я поищу, где у меня ссылки были на что-то такое. А в свое время гуглил по словам android application promotion — в принципе много полезного найти можно.
                    0
                    А легализовывать доход вы как планируете? Чтобы не иметь проблем с налоговой и не подпасть под статью о незаконном предпринимательстве.
                      +1
                      Это сложный вопрос. Очень сложный. У меня есть информация, что незаконное предпринимательство как уголовное преступление начинается с суммы дохода в 1.5 миллиона в год. Мне до таких прибылей далеко, поэтому, если и прикопаются, то прокатит как административное нарушение с штрафом где-то в 2000р. Пока думаю делать так. Т. е. оформлять и платить как физ. лицо.
                        0
                        Я в свое время порылся, и нашел только 2 приемлемых варианта — это оффшор (здравствуйте вопросы от налоговой) и зарубежный издатель (прощай определенный процент от дохода). Это меня несколько опечалило. Я не юрист, но при беглом чтении УК я понял что п. 1 ст. 171 УК наступает при получении незаконного дохода от 250000 руб (штраф в 300000/исправительные работы/арест до полугода), а п. 2 той же статьи наступает при получении незаконного дохода от 1 млн (лишение свободы на срок до 5 лет). Как говорил Остап Бендер, я чту уголовный кодекс, а если доходы в Android Market будут сравнимы с моими доходами в Nokia Store (~10k евро в месяц), то под пункт второй я подпадаю на счет раз. Nokia, к счастью, дает возможность выводить деньги легально — через образование ИП и заключение договора (собственно, по-другому получить деньги напрямую там невозможно), а вот что делать с Маркетом — непонятно.
                          0
                          А не рассматривали вариант легализовать деньги как вознаграждение за автороское право, и платить с них подоходный? Это я краем уха услышал от юристов, интересно, такое вообще возможно?
                            0
                            Это возможно, однако необходим лицензионный договор (с подписями и печатью) для валютного контроля банка и налоговой.
                              0
                              Для этого все равно нужен договор, причем составленный таким образом, чтобы из него было кристально ясно, что получаемые вами деньги являются авторскими отчислениями. Напечатанные оферты из интернета на английском языке хороши только в теории, до первой беседы с инспектором валютного контроля или представителем налоговой.
                                0
                                Дык а как быть? Ну вот предположим, у меня будет некая прибыль с маркета. И я как честный человек, хочу заплатить налоги и спать спокойно.
                                  0
                                  Ну вот я выше писал, что нашел только два варианта относительно легального получения дохода, и у каждого есть жирный минус.
                            0
                            А, виноват, с конца 2010 года крупный ущерб — это 1.5 млн, а особо крупный — 6 млн. Но все равно под крупный ущерб я попал бы по-любому, а с особо крупным разошелся бы по опасному курсу (да и кто знает, может и не разошелся бы).
                              +1
                              Мне пока далеко о них. Но я тоже с печалью думаю об этом. Но, если Вы получаете такие доходы, у Вас, возможно, есть шанс заключить договор с Google, т. к. они идут на встречу крупным издателям.

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

                              Вариант с зарубежным издателем считается единственным безупречным. Но… столько бабла на ветер… налог там, процент издателю, налог тут…
                                +2
                                Я сильно сомневаюсь что я буду сочтен крупным издателем :) А некрупным издателям тоже надо как-то жить (точнее даже не издателям, а индивидуальным разработчикам, коим я, строго говоря, являюсь).

                                Насчет «проблемы не в Google» я, если честно, не очень понял. По-моему, проблема именно в Google. Почему Microsoft и Nokia способны заключить типовой договор, а Google — нет? У них нет русского офиса? Или, может, нет юристов? По-моему, у них есть и то и другое. Просто им плевать. Вполне в стиле Google. Наше законодательство на самом деле не требует многого — только договор и invoice каждый месяц, который можно даже в электронном виде.
                                  +1
                                  Да, возможно, Вы и правы, но, к сожалению, Google вряд ли что-то изменит, т. к. у разработчиков из других стран (более приоритетных для них) проблем с зак-вом их стран нет. Поэтому, нам придется выкручиваться.

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

                                  Вообще, я подумываю послать официальный запрос в налоговую с прямым вопросом, что есть что, и как платить. Надеюсь, не повяжут :)
                                    0
                                    под этой:
                                      0
                                      хм… что-то неладное, не показывается ссылка…
                                        0
                                        >> Вообще, я подумываю послать официальный запрос в налоговую с прямым вопросом, что есть что, и как платить. Надеюсь, не повяжут :)

                                        Ну что там с налоговой, не узнали еще? :)
                                          0
                                          Нет… все никак не решусь написать им :(
                                +1
                                Еще проблема в том, что гугл, как они мне сами сказали на ГДД2011 не заключает договоры, если ты не «большой». Это проблема при оформлении себя как юр. лица.
                                –2
                                $25 — взнос Google
                                $50 — дизайн
                                >$300 — мои бесполезные затраты на фрилансеров с FFT
                                Это тоже история, наверное…
                                >$50 — консультация с юристом по налоговому вопросу
                                Что за вопрос? А главное ответ.
                                $50 — регистрация домена perfectearapp.com и создание почтового ящика через GoDaddy.com
                                >$250 — AdMob суммарные затраты за все время
                                >$30 — кампания в AdWords
                                Если есть возможность, расскажите подробнее об эффективности, рекламы, кто приходит, кто аудитория возраст, пол, может интересная аномалия. Продажи/переходы из-за сайта есть?

                                Эта фишка я правильно понимаю напеваешь мелодию тебе выдают музыку. Что за open-source решение( не нашел лицензий на сайте никаких, что-то про FFT)?
                                  +1
                                  Я не совсем понял последний вопрос.

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

                                  Статистики по рекламе привести не могу. Дело в том, что я потратил на нее достаточно мало денег, чтобы говорить о реальной эффективности, т. к. настоящие рекламные кампании в десятки раз дороже. Но небольшие всплески все же есть. С 50 долларов где-то 2000 переходов, и 8% конверсий.
                                • НЛО прилетело и опубликовало эту надпись здесь
                                    +1
                                    Ммм… спасибо, я посмотрю. Да, я иногда забываю перевести некоторые части когда появляются новые строки, или просто забываю, т. к. по умолчанию пишу на английском.
                                    0
                                    Отлично!
                                    Спасибо за подсказку про диалог для пользователя с просьбой проголосовать за программу, это отличная идея. А скажите, это у вас просто сообщение типа сходи проголосуй, или реализовано каким-то образом засылание пользователя на маркет в нужное место?
                                      +1
                                      Внизу диалога две кнопки: «Проголосовать» и «Нет, спасибо». Кнопка проголосовать открывает маркет на странице Вашего приложения.

                                      Делается это через ACTION_VIEW интент с URI вашего приложения на маркете.
                                      0
                                      Спасибо, отличная статья. Теперь фидбек.

                                      1) Попробовал первое упражнение — какая сравнение секунд. Слышу две секунды, внизу кнопки «First», «Second». Думаю — и что же выбирать — ту, что больше, или ту, что меньше? Это я уже потом на предыдущем экране заметил мелким шрифтом в инструкции, что надо выбирать ту, что
                                      Так что, мне кажется, будет лучше либо в самом упражнении спрашивать «какая больше?» явно, либо на кнопках ставить «первая больше», «вторая больше».

                                      2) Я бы ожидал еще заданий «угадать ноту». То есть просто проигрывается какая-то нота, я должен на нее ткнуть. Дальше — сложнее, угадать последовательность нот.

                                      3) В маркете приложение стоит 62 рубля, но когда я тыкаю в недостающую функциональность, мне предлагают апгрейд за 99 центов, это как?

                                      И еще пара вопросов, если не затруднит.
                                      Предложение оценить приложение всплывает и в платной, и бесплатной версии? Я пока не увидел.
                                      Публиковали ли обзоры и статьи на разных форумах и тематических сайтах?
                                      Какой прирост в количестве скачек дала реклама на AdMob?
                                        0
                                        Отвечу по-пунктам:

                                        1) Спасибо за замечание. Да, пользователи иногда путаются в First и Second… Раньше там было A и B, это вообще вводило в ступор. Возможно, правда стоит задавать доп. вопрос.

                                        2) Такие задания есть в полной версии. Absoulute Pitch Trainer.

                                        3) блин… это я забыл текст обновить, спасибо. К сожалению, нет возможности запрашивать цену напрямую с маркета, вот и осталось столько с последней акции.

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

                                        На форумах особо не выкладывал, у меня плохо с пиаром. Его кто-то выложил на 4PDA, причем, позже там появилась взломанная версия. Я долго писал админам, они удалили где-то через месяца 4. Я публиковал где-то точно не помню. Из тех, что помню — alternativeto.net. Но, судя по GA, пользователей оттуда очень немного переходило.

                                        Как-то раз огромный приток дал AppBrain, когда они написали review его в каком-то еженедельном блоге. Но такое произошло лишь раз.

                                        AdMob пробовал по 50-100 долларов кампании. Дает где-то 100-500 дополнительных скачиваний, что практически не влияет на рост. Заметил, что лучше всего кампании проводить на выходных и совмещать с апдейтом.
                                        0
                                        Хорошая статья с отличным пошаговым изложением! Приятно видеть, что при должном вложении и старании приложение легко себя окупает. Хотя с другой стороны ваша идея в маркете была новая ведь:)

                                        И пара «отсебятин»:
                                        1. OpenAL не решает вашей проблемы с миди? Я сам не в курсе, но слышал, что он многое может творить со звуком. Правда там, ох как, все низко и может под дроид не взлететь.
                                        2. Ругаете фрилансеров-программистов, но неужели самому не хотелось работать на себя и снять оковы рабства?:) По сути, Вы уже поработали им же:)
                                        3. И да, Acra попроще будет. Там ведь можно довольно просто написать и кастомный обработчик ошибок, который как угодно будет отсылать вам отчет, а у вас как-то слишком много уровней до вашего почтового ящика:)
                                        4. Какой банк используете и какую кредитку? Что-то слышал про то, что Checkout не со всеми картами дружит.
                                        5. На чем игру пишите?
                                          +1
                                          Спасибо. Отвечаю по-пунктам:

                                          1. OpenAL не поддерживается Android. Есть порт, но он не аппаратный, а software. Когда я его пробовал, он выдавал задержку, возможно, я где-то чего «недонастроил».
                                          2. Не ругаю. Вы меня неправильно поняли :) Я говорю, что у меня был плохой опыт получения некачественной работы, но деньги он просят хорошие при этом. Тут нужно быть опытным заказчиком, чтобы уметь находить людей, способных окупать свою стоимость.
                                          3. Дело в том, что нельзя отправить письмо напрямую из приложения, т. к. в андроидоджаве выпилен javamail. Андроид позволяет делать это только через установленные mail клиенты, типа Gmail, т. е. пользователю откроется окно ввода письма. А я не хочу этого, мне не нужен человеческий фактор :) Чтобы отправить напрямую, надо в приложение добавить javamail jar. А это лишний мегабайт к весу приложения.
                                          4. Чекаут работает с адсенсом, тот с Рапидой, а только оттуда деньги идут на карту. У меня Альфа-Банк, но это не принципиально, Рапида умеет много банков.
                                          5. AndEngine. Для первой игры этого должно быть достаточно :)

                                          По-поводу «оков рабства». Фриланс, ИМХО, ничем не отличается от этих «оков». У Вас так же есть заказчик, которому Вы так же обязаны делать хорошую работу. У него, возможно, меньше способов проконтролировать это, но Вы сами должны добросовестно выполнять свою работу, чтобы преуспеть. Единственным способом их снять, я считаю, это свой startup. Но, перефразируя фразу одного широко известного в узких кругах персонажа, «I am not prepared» :)
                                            0
                                            Спасибо за ответы.

                                            На самом деле нужен не стартап, а бизнес, чтобы снять оковы с себя. Стартап — это модное слово, которое часто подразумевает внешние инвестиции в обмен на долю в проекте, что по сути тоже рабство, так как деньги нужно вернуть, а это не всегда просто и еще к тому же давление. Бизнес же, аля описанному в ReWork приятнее, ИМХО и тут действительно свобода и творчество. Только не стоит витать в облаках, а работать и делать великие продукты, которые востребованы людьми:)

                                            Хорошо, что AngEngine. Мне вот приходится использовать сейчас Cocos2d-android-1. Ужас полный, хотя вцелом и терпимо.

                                            Кстати, вот Вам идейка: раз уж пришлось разбираться с фрагментами, то напишите хорошую понятную статью о них. На хабре по-моему статей нет о них. Я вот сам хочу, но времени нет: сперва разобраться, а потом еще и написать статью.
                                              0
                                              Спасибо за идею :) как будет время — обязательно напишу.

                                              По-поводу стартап-бизнес, наверное, это все вопрос понятий. Я имел ввиду свое дело, свой собственный проект, на который тратишь все свое время. И это не обязательно должно быть что-то, требующее огромных начальных инвестиций.
                                              0
                                              3. Отправить письмо — а что мешает «написать» письмо напрямую в smtp-сокет, как это делает любой email-клиент? Наверняка есть готовые классы для «общения» с почтой, можно и самому попробовать написать, протокол-то текстовый.
                                                0
                                                Зачем?
                                                  0
                                                  Чтобы не добавлять мегабайтный javamail и чтобы не держать на сервере прокси-службу для обработки логов.
                                                    0
                                                    Как я уже сказал, в андроиде нет никакого публичного апи для работы с почтой. Вы считаете, что самому реализовывать классы для общения с почтой, т. е. фактически, реализация имейл клиента, отладка этого дела, это меньше затрат, чем один сервлет на бесплатном аппенджине на 10 строчек и столько же строчек по отправке ему данных в приложении?
                                                      +1
                                                      Проще показать, чем убеждать: реализация на 60 строк. SMTP — простейший текстовый протокол, от которого даже ответы слушать не обязательно. Подключились, накидали строк, отключились. И дело не в бесплатности аппенжина, а в уменьшении количества звеньев, каждое из которых потенциально может отказать. Просто хотел сказать, что отправка напрямую — не проблема.
                                                        0
                                                        Спасибо за инфо и пример. Попробую как-нибудь поэкспериментировать.

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

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