Skip to content

hossain-khan/android-daily-headlines

develop
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
 
 
 
 
 
 
 
 
 
 
tv
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

CircleCI Build Status Codacy Badge codebeat badge release license
GitHub issues GitHub closed issues GitHub closed pull requests Average time to resolve an issue Percentage of issues still open

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).

Google Play Store - App Download Google Play Store - Beta Testing

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 πŸ‘

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

Gradle Modues

android-daily-headlines-module-overview

For more infromation check project wiki

Screenshot from develop build

device-2016-11-09-231920

mobile-demo


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 😎