Мы сотрудничаем с Хабром с 2014 года. Активная фаза создания и развития нативных приложений приходилась на период 2014—2018 года, затем работа над нативными приложениями была приостановлена, а позднее приложения были сняты с продажи из магазинов. Команда Хабра сосредоточилась на разработке веб-приложений в формате PWA.

В 2022 году мы вернулись к сотрудничеству и сделали для Хабра простые нативные обертки для их PWA приложений с небольшим количеством нативных функций. Приложения доступны в App Store и Google Play.
Новая версия приложения платформы блогов Хабр
Работаем с 2014
Мобильное приложение Хабр
Логотип Хабра
2014 – 2018

Приложение платформы блогов Хабр

Хабр — крупнейший в Европе ресурс для IT-специалистов. Сюда приходят обсудить новости индустрии и поделиться опытом.
История о разработке:
«Мобильные приложения — совершенно новое для нас направление. При этом у нас не было желания, сил и средств создавать с нуля еще один отдел разработки для этой категории продуктов. В общем, мы подумали, пообщались и решили аутсорсить»
— Денис Крючков
Издатель «Хабра»

Инструменты и Сервисы

Мы использовали различные инструменты для обмена информацией и коммуникаций во время проекта. Это наш стандартный workflow в заказной разработке:
Хранение кода Bitbucket, хранение графики Dropbox, учёт задач и багов Pivotal Tracker, инхаус чат Hipchat, согласование дизайн-макетов и скетчей Trello, сбор крешей Crashlytics, аналитика Flurry/Google Analytics, внешняя коммуникация Skype/Telegram

Функциональность

Поиск по публикациям

Просмотр ленты лучших публикаций (за сутки, за неделю и т.п.)

Посмотр публикаций по подписке

Добавление публикаций в закладки

Работа с хабами

Темная тема на Android
Работа с профилем

Настройки оформления публикаций и алгоритмов загрузки контента

Виджет с кармой и рейтингом

Поддержка Safari iCloud Keychain и Handoff на iOS

Разработка

Пока дизайнеры проектировали интерфейс, разработчики уже писали компоненты, отвечающие за общение с API. Под все платформы были использованы только нативные средства разработки и ноль кросс-платформенных фреймворков.
Мобильное приложение Хабр
Мобильное приложение Хабр
Комментарий iOS-разработчика
«Хотелось сразу сделать крутое приложение-хранилище статей, подключив Core Data с нормализованной базой данных для постоянного хранения постов и других сущностей. Но, как оказалось позже, приложение получалось совсем непонятным для пользователя. Одна из ряда спорных ситуаций для примера: юзер, находясь в сети, добавлял в избранное какой-нибудь пост и сразу после этого терял связь с интернетом, затем в оффлайне переходил в раздел «Избранное», который, естественно не мог скачать посты с сервера, и видел в нём всего один пост — тот самый, который минутами ранее был сохранён локально при загрузке ленты — это сбивало с толку бывалого хабраюзера: «куда делись остальные избранные? У меня на "Хабре" их куча была! Всё пропало!». Показывать тот одинокий избранный пост нам было как-то неловко, но и скрывать от юзера его было ещё более нелогично — ведь в локальном хранилище он существует и он помечен как избранный. Нами было решено тупо идти User Experience'ным путем: «хочешь увидеть ленту — запроси её с сервера». Это не значит, что посты теперь совсем не хранятся локально и приложение не юзабельно в офлайне — просто я дополнил уникальный ключ флагами принадлежности к определённому экрану. Так нормализация БД была принесена в жертву UX»

— Андрей Кадочников
iOS-разработчик
Инопланетянин
Хабр
Логотип Хабра прозрачный
Мобильное приложение Хабр
Комментарий Android-разработчика
«Первые проблемы касались размещения различного типа контента в постах, а особенно в комментариях. В случае поста решение нашлось быстро. Полученный с сервера html-контент парсится и оптимизируется под небольшие экраны, затем навешиваются свои css-стили, и итоговый html отображается в WebView. С комментариями же всё оказалось намного сложнее. Во-первых, они имеют древовидную структуру, а во-вторых, по содержанию являются почти тем же постом. У нас появилось несколько идей отображения комментариев разной степени нереализуемости. Среди них даже проскочила мысль вывести все комменты в одном WebView. Но так как среди нас не оказалось гуру вёрстки и javascript, то эту идею серьёзно не рассматривали. Остановились же на нативной реализации: комментарии парсятся так же, как и пост, но на выходе получается не html, а Spanned-строка, которая в свою очередь отображается в TextView. Весь медиа-контент, спойлеры и код открываются в новом окне по клику на соответствующую ссылку. Считаю, что при такой реализации нам удалось решить проблему представления полной информации и удобства её получения на небольших экранах смартфонов»

Евгений Раткин
Android-разработчик
Мобильное приложение Хабр
Мобильное приложение Хабр

Релиз и немного цифр

На наш взгляд релиз прошёл успешно. В момент анонса все приложения уже были доступны в магазинах, а также легко находились по ключевым словам. «Хабр» испытал некоторые проблемы на серверной стороне, связанные с авторизацией, но они были быстро исправлены. Начал поступать первый фидбек на ящик саппорта и в отзывах Google Play.
Распределение установок между платформами
22-28 апреля 2014
логотип Андроид
Логотип Эпл
48%
Логотип windows
41%
11%
Есть проект?
Другие проекты