
По данным исследований (Data.ai, Sensor Tower, Statista), Android-приложения имеют на 10-30% более низкие оценки, чем iOS-аналоги. Например, приложение может получить 4,5 на iOS и 3,5-4,0 на Android.
Меня зовут Анастасия Симонова, я Android-разработчик в команде Домклик. Поделюсь нюансами разработки под Android и предложу некоторые решения для избежания проблем в будущем. Готовы? Приступим!
Важно понимать, что в крупных корпоративных приложениях рейтинг зачастую зависит не только от качества самого приложения, но и от общего уровня сервиса, предоставляемого пользователям. Если проанализировать отзывы, оставленные пользователями, становится очевидным, что многие из них касаются не функциональности приложения, а проблем с обслуживанием или недовольством работой компании в целом. Например, распространенные комментарии включают: "Менеджеры ничего не знают", "В чате не отвечают", "Заказал обратный звонок — 3 дня никто не перезванивает", "Ставка 25%, кто будет брать ипотеку?". Поэтому важно не только разрабатывать качественное приложение, но и обеспечивать высокий уровень сервиса. В этой статье мы сосредоточим внимание на корнеркейсы Android-разработки, которые могут повлиять на пользовательский опыт и, соответственно, на рейтинг приложения.
Оглавление
Размер и производительность приложения

Проблема: неоптимизированные приложения для устройств с низкими характеристиками (1-2 ГБ ОЗУ) могут работать медленно и вызывать сбои, что приводит к негативным отзывам. Бюджетные устройства нередко страдают от недостатка объёма внутреннего хранилища для установки и обновления приложений, что также вызывает недовольство пользователей.
Актуальность: подавляющее большинство проданных смартфонов в 2023 году являются бюджетными, и большинство из них имеют менее 32 ГБ памяти. 60 % пользователей бюджетных смартфонов сталкиваются с проблемами её нехватки. Почти 70 % пользователей ожидают, что приложения будут работать быстро, даже на устройствах с ограниченными ресурсами, а медленная работа может увеличить количество негативных отзывов на 35 %.
Решение: оптимизация кода, управление хранилищем и использование легковесных данных (изображения, видео, анимации) повышают производительность и уменьшают потребление памяти. Тестирование нужно проводить на различных устройствах, включая бюджетные модели. Таĸже рассмотрите возможность использования облачных или ĸорпоративных ферм для тестирования.
Примеры решений и оптимизаций
Видео и аудио:
Используйте стандартные форматы и кодеки (H.264 для видео, AAC для аудио).
Предварительно конвертируйте видео в более совместимые форматы или применяйте облачные решения.
Анимации:
Используйте встроенный профайлер Android Studio для мониторинга производительности и уменьшения тяжёлых операций в UI-потоке.
Используйте легковесные векторные анимации с Lottie для улучшения отзывчивости.
Изображения:
Используйте библиотеки, такие как Glide или Coil, для автоматической обработки форматов и кеширования изображений.
Создавайте адаптивные ресурсы для различных плотностей экрана.
Системные ресурсы:
Оптимизируйте фоновую работу, избегая активных процессов, которые могут разряжать батарею (например, GPS).
Используйте WorkManager или JobScheduler для управления фоновыми процессами.
Анализируйте использование ресурсов (процессора, памяти, сети) с помощью Android Profiler.
Управление памятью:
Оптимизируйте данные, используя сжатие (например, WebP) и удаляя неиспользуемые компоненты.
Удаляйте неиспользуемый код для старых версий Android и поддерживайте только необходимые API. Применяйте ProGuard/R8 для уменьшения размера APK и используйте режим сборки release для финальных версий.
Используйте динамические модули и отложенную загрузку для больших ресурсов.
Минимизируйте зависимости от внешних библиотек и выбирайте лёгкие альтернативы.
Используйте apk analyzer и gradle profiler для выявления проблем с памятью. Также используйте Android App Bundle для оптимизации загрузки.
Отсутствие поддержки стандартных API

Проблема: отсутствие поддержки стандартных API на некоторых устройствах (например, от Huawei) ограничивает функциональность приложений, что может вызывать недовольство пользователей из-за недостатка привычных возможностей.
Актуальность: в 2023 году более 25 % смартфонов работают без Google Services, что требует адаптации под них. Исследование AppFigures показало, что 30 % пользователей недовольны ограниченной функциональностью таких приложений.
Решение: разработчики могут использовать альтернативные решения и внедрять различные flavors для настройки приложений под разные магазины и API. Это поможет адаптировать функциональность под уникальные требования устройств.
Примеры: устройства без Google Services (например, Huawei) создают собственные экосистемы и API. Например, Huawei AppGallery и HMS предоставляют аналоги функций Google. Также на некоторых устройствах механизм WebView может работать некорректно или вовсе не работать.
Рекомендации:
Тестируйте на устройствах без Google Services для выявления проблем на ранней стадии.
Заменяйте зависимости от Google на альтернативные решения, например, Organic Maps для работы с картами.
Участвуйте в форумах и платформах разработчиков для получения актуальной информации и поддержки.
Качество и стабильность

Проблема: некорректно выстроенные пользовательские пути в фичах приложения и частые падения могут привести к негативному пользовательскому опыту и снижению рейтинга в магазинах приложений, а также к удалению приложения.
Актуальность: по данным исследования, более 70 % пользователей удаляют приложение после одной неудачной попытки его использования. В условиях высокой конкуренции на рынке мобильных приложений качество и стабильность стали важнейшими факторами успеха. Приложения с высокими рейтингами, как правило, предлагают пользователям плавный и надёжный опыт.
Решения:
Используйте инструменты для отслеживания статистики падений приложения, такие как Firebase, AppMetrica или Sentry, и создавайте план регулярных обновлений приложения, чтобы исправлять замеченные баги.
Детально анализируйте текущие пользовательские пути, выявляя узкие места и точки, где пользователи сталкиваются с трудностями. Используйте методы прототипирования и тестирования, чтобы оптимизировать взаимодействие. Проводите А/Б-тестирование.
Проводите ревизию кода для улучшения структуры и качества, а также используйте современные паттерны проектирования, способствующие более стабильной работе приложения.
Проведите нагрузочное тестирование вашего приложения, чтобы убедиться в его способности справляться с большим количеством пользователей и запросов одновременно.
Следите за обновлениями зависимостей и библиотек, чтобы использовать последние версии, которые могут улучшить производительность и исправить известные ошибки.
Собирайте отзывы пользователей о производительности приложения и используйте их для выявления проблем и улучшения качества.
Безопасность данных

Проблема: недостаточная защита пользовательских данных и утечки конфиденциальной информации угрожают репутации приложения и снижению доверия пользователей, особенно когда приложения требуют ненужные разрешения.
Актуальность: 70 % пользователей считают безопасность данных важным фактором при выборе приложения. В 2023 году утечки данных увеличились на 45 %, что ведёт к потере до 50 % рейтинга и удалению приложений 62 % пользователей.
Решение: разработчики должны использовать современные методы шифрования и безопасные протоколы (например, HTTPS), а также предоставлять прозрачные политики конфиденциальности.
Методы обеспечения безопасности:
Используйте для защиты информации современные алгоритмы, такие как AES.
Не допускайте передачу чувствительны данных без шифрования. Используйте HTTPS для безопасных запросов, например с помощью библиотеки OkHttp.
Не запрашивайте у пользователей лишних разрешений. Например, если вашему приложению не требуется доступ к камере или геолокации для выполнения его основных функций, не запрашивайте эти разрешения.
Внедрите двухфакторную аутентификацию, используя Google Authenticator или SMS-верификацию.
Обновляйте приложение и его зависимости для устранения уязвимостей.
Создайте понятную политику конфиденциальности о том, как используются данные пользователей.
UX

Проблема: разные размеры экранов и разрешения могут вызывать проблемы с отображением интерфейса, что приводит к недовольству пользователей.
Актуальность: в 2023 году на рынке было много моделей с экранами от 5 до 7 дюймов. Около 60 % пользователей сталкивались с проблемами отображения интерфейса, и 85 % заявили, что неудобства заставляют их отказаться от приложения или оставить плохие отзывы.
Решение: используйте гибкие макеты и обеспечьте совместимость с интерфейсами различных вендоров.
Примеры проблем:
Кастомные шрифты. Учитывайте, что они могут быть не предустановлены. Различия могут повлиять на читабельность;
Кастомные элементы управления. Кнопки могут отображаться неправильно.
Темы. Оболочки, такие как MIUI от Xiaomi, могут изменять дизайн приложения.
-
Внешний вид уведомлений. Некоторые производители используют свои стили.
Oppo
Рекомендации:
Придерживайтесь стандартов Material Design для лучшего отображения.
Тестируйте на реальных устройствах для проверки адаптивности интерфейса. Используйте бюджетные Xiaomi, Huawei, Oppo, не ограничивайтесь флагманскими устройствами.
Динамически изменяйте стили в зависимости от производителя.
val isXiaomi = Build.MANUFACTURER.equals("Xiaomi", ignoreCase = true)
.Создавайте отдельные макеты для портретной и альбомной ориентации, используя соответствующие папки. Требуйте от дизайнеров согласованные с бизнесом макеты под различные разрешения.
Accessibility

Проблема: приложения, игнорирующие потребности пользователей с ограниченными возможностями, могут стать недоступными для значительного сегмента аудитории, что ведёт к недовольству и снижению рейтинга.
Актуальность: более 1 миллиарда людей (15 % населения) живут с нарушениями здоровья, однако более 98 % веб-сайтов не соответствует стандартам доступности (WCAG), что также касается мобильных приложений. Это приводит к трудностям для пользователей с ограниченными возможностями и может снизить рейтинг приложения на 20-30 %.
Решение: разработчики должны интегрировать функции доступности, следуя рекомендациям WCAG и тестируя приложения с участием пользователей с ограниченными возможностями. Важно включать голосовые подсказки, текстовые альтернативы для изображений, масштабирование шрифта и легкую навигацию.
Примеры:
Приложение для чтения книг без экранного чтения не сможет обслуживать пользователей с нарушениями зрения (не игнорируйте атрибут
contentDescription
для кнопок и изображений).Приложение для управления задачами без интуитивной навигации может быть неудобным для пользователей с ограниченной подвижностью.
Отсутствие локализации

Проблема: многие приложения не поддерживают несколько языков и культурные особенности, что ограничивает их использование в разных регионах.
Актуальность: 70 % пользователей хотят использовать приложения на своём родном языке, а более 50 % удаляют приложения без необходимого языка или оставляют негативные отзывы. Приложения с поддержкой нескольких языков могут привлечь на 50 % больше пользователей на международных рынках.
Решение: разработчики должны с самого начала внедрять поддержку нескольких языков и адаптировать контент к различным культурным контекстам. Для этого следует использовать инструменты локализации и регулярно обновлять переводы, особенно если приложение предполагает использование в других странах.
Примеры:
Приложение для общения, доступное только на английском, потеряет пользователей в странах с другим основным языком.
Приложение для планирования путешествий без учёта местных привычек будет сложно воспринимаемо международной аудиторией.
Обновление и поддержка

Проблема: приложения без регулярных обновлений становятся уязвимыми к ошибкам и проблемам с безопасностью, что приводит к недовольству пользователей.
Актуальность: 70 % пользователей ожидают обновлений, а 45 % сообщают, что проблемы с производительностью заставили их отключить уведомления или удалить приложение. 65 % пользователей считают приложение менее надёжным, если оно не обновляется более трёх месяцев, что может повлиять на его рейтинг.
Решение: разработчикам следует регулярно обновлять приложения для устранения ошибок и добавлять новые функции, а также организовывать каналы обратной связи для пользователей.
Примеры:
Приложение для обмена сообщениями без обновлений безопасности может потерять доверие пользователей.
Игра без новых уровней и контента может снизить интерес и вовлечённость пользователей.
Регулярные обновления и поддержка важны для положительного пользовательского опыта и доверия к приложению.
Заключение
Создание успешного мобильного приложения — это не только удачная идея или привлекательный дизайн, но и многогранный процесс, в котором учитываются множество факторов. Проблемы, рассмотренные в статье, могут существенно повлиять на пользовательский опыт и репутацию приложения. Разработчикам необходимо тщательно анализировать каждую из этих областей и постоянно совершенствовать свои продукты, отвечая на потребности пользователей.

Ваши идеи и опыт крайне важны, поэтому делитесь в комментариях интересными и неочевидными корнеркейсами, решение которых поможет сделать приложение лучше, надежнее и успешнее!
Комментарии (10)
radioxoma
13.02.2025 11:19Отсутствие локализации лучше плохой локализации, которую нельзя переключить.
dkfbm
13.02.2025 11:19Это всё очень благородно, но вот у меня, например, абсолютное большинство негативных оценок оставляют недовольные наличием платных функций. А я без этого не могу, очень кушать хочется.
killyself
13.02.2025 11:19Возможно дело не наличии платных функций, а в том, когда и как пользователь о них узнаёт, и насколько они критичны для использования приложения. Можно ожидать недовольств, если пользователь, только привыкший к приложению, натыкается на пейволл, особенно если его в лицо кидают раз в 15 минут. С другой стороны скромная плашка "поддержите разработчика за дополнительные плюшки и респект" в углу главного меню вызовет намного меньше зла.
dkfbm
13.02.2025 11:19насколько они критичны для использования приложения
За функции, которые некритичны, никто платить не будет. Разумеется, для полноценного использования они нужны – без них фактически ознакомительный режим.
achekalin
13.02.2025 11:19Это бы Сберу в уши: от старой приложухи, которая
шустро ставилась,
работала на всём, и
с задачей перевести N рублей в рамках убогих лимитов Сбера справлялась отлично
они «незаметно» (незаметно для себя, но не для людей; вон, все форумы полны, но «принимающие решения лица», очевидно, имеют чем заняться, чем чушь из интернета читать, да и просто понимают, что KPI — это бабки, а счастье юзеров — это «без платно») перешли к комбайну,
для которого не грех раз в два года свежий флагман покупать,
который на одном из лучших в индустрии процов стартует 5 секунд (5!!! Пять, Карл, за это время телефон может параметры первых атомных бомб рассчитать!),
который умеет всё, но в нём это всё регулярно нельзя найти, т.к. там даже разделы переезжают каждые 2–3 месяца,
при разработке которого, как кажется, мать‑мать, больше усилий на работу сторис тратится, чем на отладку банковские функции (в т.ч. и по UI), и
в котором можно купить симку, оплатить штраф, но нельзя узнать, когда точно снимется очередной платеж ипотеки (с точностью до часа, а не до дня),
где даже не сразу поймёшь, что старых добрых дебетовых карт в Сбере более нет, есть некие сберкарты, которые как бы привычные, а как бы нет (ну, как Фругурт не являлся Йогуртом), и что все отличия — в карман Сбера идут.
Про работу кешбека и вовсе можно не искать инфу, в итоге тебя отправляет на сайт Сбера, который, тадааам — на телефоне в браузере без танцев не открывается, ибо серты... но эту инфу в приложение перенести нельзя! Пожилые пользователи просто зависают, когда раз в 2-3 месяца хотят перевести в приложении пару тысяч из своей невеликой пенсии в оплату за что-то - какое тут поле для мошенников, которые по телефонам диктуют "идите туда, жмите вот это", а ИБ Сбера такую UI-дыру просто игнорит...
Понимаю, что «всё для блага человека», но я как‑то подсознательно жду оповещение «ваш телефон имеет всего 12 Гб ОЗУ и всего 256 Гб флешки, просьба обновить его до модели с 16/512, потому что через три обновления программа не сможет поместиться ни туда, ни туда».
killyself
13.02.2025 11:19За функции, которые некритичны, никто платить не будет
Есть рычаги и помимо функциональности - комфорт, статус, косметика. Но, конечно, повышение продаж и повышение недовольства платными функциями - это две стороны одного клинка
dkfbm
13.02.2025 11:19Есть рычаги и помимо функциональности
Это всё понятно. Собственно, мой первый комментарий был к тому, что "тайны рейтингов" отнюдь не исчерпываются перечисленным в статье.
Вообще статья довольно странная: начинается с весьма спорного утверждения, что рейтинги на андроиде всегда ниже, чем на iOS (с чего бы вдруг?) и нам обещают рассказать, как с этим бороться; а потом следует набор довольно банальных рекомендаций крайне общего характера, одинаково применимых к обеим платформам.
dsoastro
13.02.2025 11:19такое могут позволить себе только корпоративные приложения, для инди-разработчиков это пустая трата времени, которая не приводит к монетизации
zudwalex
TL;DR: пользователи любят хорошие приложения и не любят плохие.