Pull to refresh

айПодписки — клиент для Яндекс.Подписок для iPad

Self Promo


8 месяцев назад, в честь закрытия Google Reader, компания Яндекс обновила API для своего сервиса Подписки. Я довольно давно им пользуюсь, там собираются все интересные мне новости. И я давно уже хотел клиент для iPad. Лично мне с него читать новости гораздо удобнее, особенно в дороге. Но время шло — а ни одного клиента так и не появилось. Ну а раз нет — напиши сам.

К счастью, в обновлённом API все данные можно получать в JSON. Нужно просто пройти OAuth-авторизацию (хорошая статья на эту тему на Хабре), чтобы получить Access Token — и в путь.

Логичным было выбрать для реализации UISplitViewController — слева список подписок и постов в них, справа содержимое новостей. В левой часте в таблицу делаем кастомный UITableViewCell, чтобы выводить число непрочитанных новостей, в правой же части просто UIWebView, который выводит в зависимости от переключателя или анонс новости, или открывает оригинал на сайте-источнике.



В целом, получился довольно простой RSS-ридер с той разницей, что всю работу по сбору подписок и парсингу RSS-лент на себя берёт Яндекс (а про это, у них, кажется, была даже отдельная статья о том, с какими кривостями-невалидностями приходилось им встречаться), а в клиент отдаются просто данные.

Но именно такой простоты мне и не хватало. Да и веб-версия Подписок, по-моему, для бразуера тяжеловата. Особенно когда в статях в ленте кучу куча картинок. Например, если вы подписаны на новые раздачи на каком-то торрент-трекере с фильмами — там и постер, и скриншоты, и миллион значков различных вроде логотипов IMDB и Кинопоиска, а грузится это в браузере сразу вне зависимости от того — развёрнута у вас запись или нет, и 50 новостей с 10 картинками в каждой превращаются в 500 картинок на странице разной степени тяжести.

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



Кроме того, в клиенте для iPad можно поделиться интересной новостью в соц. сетях, потравить по почте/sms/iMessage или сохранить статью в Список для чтения в Safari, чтобы позже её прочитать даже без доступа к сети. Ну и, само собой, можно добавлять новые новостные ленты или удалять уже существующие. Для добавления — достаточно ввести просто адрес сайта, а RSS будет выдран самим сервисом, если он там есть.

Технические особенности, с которыми я столкнулся при разработке, в основном касаются API.

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

Во-вторых, иногда для новой RSS-подписки сервису требуется время для того, чтобы «всосать» в себя ленту. Например, мою личную RSS-ленту с Хабра сервис всасывал минут 40, прежде чем показать мне хотябы список постов.

Приложение бесплатное. Если вам стало интересно — ссылка: itunes.apple.com/ru/app/ajpodpiski-rss-klient-dla/id855118050?mt=8

P.S. если у вас есть какие-то идеи по улучшению приложения — готов выслушать в комментариях.
Tags:айподпискияндекс.подпискиapi яндексios development
Hubs: Self Promo
Total votes 31: ↑23 and ↓8 +15
Views2.9K

Popular right now

Профессия iOS-разработчик
June 21, 202190,000 ₽SkillFactory
Факультет дизайна
June 21, 2021236,988 ₽GeekBrains
Профессия Аналитик данных
June 21, 202169,000 ₽SkillFactory
Project Manager
June 21, 202159,400 ₽GeekBrains

Top of the last 24 hours