- Перед вами небольшое приложение для просмотра ленты постов Vk. Основано на vk api.
- Авторизация
- Отображение списка всех и только избранных постов
- Лайк поста (в т.ч. свайпом слева-направо)
- Скрытие поста по свайпу справа-налево
- Pull-to-refresh для обновления ленты
- Сохранение картинки в галлерею по нажатию на кнопку "репост"
- Возможность поделиться картинкой через другие приложения по нажатию на кнопку "репост"
- Кэширование постов + оффлайн мод
- Для авторизации используется VkSDK, все остальные запросы выполняются асинхронно с помощью RxJava2, а также библиотек Retrofit2 + Okhttp3.
- Посты кэшируются с помощью библиотеки Room.
- Архитектура приложения построена по MVI, для чего была задействована библиотека RxRedux. В качестве презентера используется архитектурный компонент ViewModel. В имплементации приложения придерживался подхода Clean.
- Реализован Dependency Injection с помощью библиотеки Dagger2.
- Асинхронная загрузка картинок происходит с помощью Glide.
- Для отображения постов написана custom ViewGroup.
- Сохранение картинок реализовано с помощью MediaStore.
- Кроме этого используются Фрагменты, DiffUtil в ресайклере, Shared Preferences.