Awesome
android-daily-headlines
An app that provides daily headlines from popular news source.
Initial planning stage, main goal is to create simple app with news source title 'only' to keep it simple. This app is meant to take a glance through the headlines quickly with possible option to view details of the story (future version).
Building and Contribution Guide
The app uses gradle, follow firebase android setup guide to get google-services.json
and replace them in both mobile
and tv
module.
NOTE: Currently dummy
google-services.json
files are added to pass CI build. You must replace them with your's to build project properly.
Contribution is welcome via :octocat: pull-request. Checkout open issue to get pointer on what you can help us with :thumbsup:
Goal and Status
Current plan is to create simple possible 📺 app with news headline only. This allows users to quickly glance through headlines over a ☕
The 📱 version of the app will follow after 2.0 release of 📺 (TV) app.
Project Planning
I am currently tracking issues and tasks using :octocat:'s kanban board
Release v1 - https://github.com/amardeshbd/android-daily-headlines/projects/1- 1.0 is published in Google Play- Release v2 - https://github.com/amardeshbd/android-daily-headlines/projects/2
Gradle Modues
For more infromation check project wiki
Screenshot from develop
build
DISCLAIMER
This is my personal project to experiment with following tools & technologies
- Firebase - Analytics (See #111), Crash Reporting (See #10), Remote Config etc.
- Travis CI - for build automation (See travis.yml)
- Code coverage (jacoco [See travis.yml], Codecov.io, codacy, codebeat)
- OpenAPI Specification & Related Tools (See #11, wiki)
- RxJava (Using for retrofit and app)
- Jack & Jill Toolchain - Used for Java 8 support (LIMITATION: I was not able to use Java 8 feature due to library project not being supported by jack. See AOSP issue #211386)
- Retrofit 2 (See API Services)
- Dagger 2 (See #29, core-lib:gradle)
- Picasso - Used for memory efficient image loading
- Coordinator & Constraint Layout
- Timber (android logging) (See #30)
- Android TV Leanback (Most code samples are taken from "leanback-showcase" project)
- Design Support Library
- Database (local caching - Realm (maybe?))
- Scheduler - data syncing
- MVP Architecture (See #27, some UI still needs refactoring)
- AutoValue (See #76)
- Google Play Alpha Beta release (Beta app available on Google Play)
- LeakCanary (See #60)
Features started using in the mobile app:
- Kotlin Support (See #175)
- Room ORM (Planned for content caching)
- Upgrade to RxJava 2 (Planned)
- Upgrade to Firebase Crashlytics (Planned)
I'll try to update references for these items when I use in the app :sunglasses: