Моя история разработки одного Android приложения. Часть 4.
На очереди была функция поиска отписавшихся от сообщества участников. Звучала в моей голове она просто, реализовывалась она совсем не так просто, а вот в работе возникло много проблем
Суть её заключалась в скачивании списка id пользователей сообщества и сравнение этого списка со скаченным ранее. И тут я столкнулся с ещё одной интересной особенностью ос Android, она под каждое приложение создает изолированную виртуальную машину, которой выделяет определенный размер оперативной памяти, причем этот размер для всех приложений на одном устройстве одинаковый и задается производителем. Например, сейчас для обработки сообщества с 1 000 000 подписчиков мой алгоритм требует чуть более 100мб памяти. Казалось бы, устройству с оперативкой в 1 гигабайт эта задача по карману, но не тут то было, не смотря на то, что у устройства 1024 мб оперативной памяти каждому приложению оно выделяет только 64мб, а если приложение попробует использовать 65-ый мегабайт, то сразу же вылетит.
Так что пришлось ввести ограничение на размер паблика, которое определяется на устройстве пользователя в зависимости от размера этого куска памяти.
После реализации этой функции, я понял, что пора выпускать приложение из стадии бета-теста в открытое плавание. Дрожащими руками нажал на кнопку публикации рабочей версии приложение ииииии, ничего не изменилось пару часов пообновляв группу и страницу в маркете и не увидев никаких изменений пошел спать с мыслями что приложение найдет свою аудиторию и утром я проснусь богатым:)
Разумеется, ничего не произошло, ещё несколько дней я наблюдал за статистикой, ни одной новой установки и несколько активных пользователей ещё со времени бета-теста.
Мотивация меня покинула, да ещё и заболел, и решил отложить это неблагодарное дело.