Найти тему
IT-предприниматель

Как я сделал обновление для увеличения платных пользователей в Android-приложении

Оглавление

Доброго времени суток, дорогой читатель. Если честно, не знаю, какая получится статья — интересная или не очень, но хочу рассказать вам немного о процессе разработки крупного обновления во всех деталях.

Постановка задач

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

Особой сложности я здесь у меня нет, есть доска на Trello, на которой я фиксирую карточки по нескольким категориям:

  • Жалобы пользователей.
  • Идеи новых функций от пользователей.
  • Личные идеи новых функций.

Там же есть два списка "К новой версии" и "Готово". Я выбрал из жалоб и идеи на новые функции подходящие, как мне показалось варианты и перекинул их в список "К новой версии", восстанавливать как было не буду, но приведу скриншот, как получилось. Почти все карточки перекочевали в список готово и на данный момент я работаю над бета-тестированием на своих пользователях в Google Play, подробнее о внедрении новой версии расскажу ниже.

Список новых функций
Список новых функций

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

Список задач в процессе разработки обновления постоянно менялся, добавлялись новые задачи, крупные я разбивал на мелкие, чтобы не забыть, частенько я работал над обновление с утра до ночи (уж очень сильно меня захватывает процесс разработки).

Работа над обновлением, программирую

На самом деле не знаю, как интересно для читателя рассказать о том, как я "программировал", да и какие-то особые моменты я сейчас уже не вспомню, поэтому расскажу об общих вещах, не углубляясь в само программирование. Если вам интересна эта тема — обязательно пишите в комментариях и я буду корректировать свои статьи с этим учётом.

Вся работа над обновлением у меня заняла около месяца. Если говорить о нагрузке, то работал я иногда по 8-10 часов, даже в выходные, а иногда не работал ни часу в день. Поэтому объём по часам не скажу, но по ощущениям я проделал огромную работу.

На данный момент проект с кодом программы выглядит примерно так:

Статистика по коду проекта
Статистика по коду проекта

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

Основным своим недостатком в разработке считаю отсутствие автоматических тестов, для этого проекта их нет совсем, постоянно говорю себе, что напишу их хотя бы в каком-то количестве для тестирования основных функций, но постоянно это откладывается на потом и приходится многие вещи тестировать руками (что очень неудобно, не интересно и занимает много времени). Не повторяйте моих ошибок — пишите авто-тесты и не ленитесь прогонять их почаще.

Список изменений новой версии

Далее приведу список изменений и поясню некоторые из них подробнее.

  1. В настройки приложения добавлена возможность включить автоматическую синхронизацию контактов при запуске приложения (раньше только вручную).
  2. Добавлена возможность пересылать и исходящие СМС на ряду с входящими.
  3. Исправлена работа телефонов с двумя сим-картами (раньше настройки обрабатывались некорректно).
  4. Исправлена работа приложения на старых версиях Android, при попытке обратиться к серверу — Volley (библиотека для работы с запросами) не могла подтвердить сертификат и возвращала ошибку. Вообще очень интересная ошибка, которую я только определил и она попросту лишала меня большого количества пользователей, так как у них не работало.
  5. Исправлена ошибка при настройке пересылки через SMTP (если указывать в поле пользователь не почту, то не работало).
  6. Возможность защиты приложения паролем (только для Pro-версии).
  7. Возможность указать расписание работы приложения на неделю. Например, если пересылать нужно только когда вы на работе (только для Pro-версии).
  8. Возможность указать шаблон сообщений, которые будут пересланы — с помощью специальных констант указать, какая информация нужна (только для Pro-версии).
  9. Множество других мелких исправлений и изменений.

Что сейчас?

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

Вы можете помочь мне и поучаствовать в бета-тестировании, для этого нужно всего лишь перейти по ссылке и подтвердить участие и новая версия вам будет доступна сразу, как только её пропустит Google Play (а они пока не пропустили, на момент написания статьи прошли уже сутки с момента отправки на проверку), почему так можно подробнее прочитать в моей предыдущей статье "Как я победил Google Play с их обновленной политикой разрешений для SMS и Call log". После проверки новой версии вы можете писать на почту разработчика прямо из приложения, если найдете какие-то баги, а я буду вам очень благодарен.

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

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