/p06-newsapp

Objective: create a News feed app which gives a user regularly-updated news from the internet related to a particular topic, person, or location.

Primary LanguageJava

Table of Contents

  1. About
  2. Resources used in this project
  3. Reflections

About

This project is made up of Stage 1 and Stage 2.

Stage 1

Objective: create a News feed app which gives a user regularly-updated news from the internet related to a particular topic, person, or location. The presentation of the information as well as the topic is up to you.

For this stage, create an app to display recent news stories on a topic of your choice using an API.

Note: the app is using a test key for The Guardian API. If the API rate limit has exceeded, you need to add your own API key to the code.

NewsActivity Stage 1 EmptyView No News EmptyView No Internet

This project is about combining various ideas and skills practiced throughout the course. They include:

  • Connecting to an API
  • Parsing the JSON response
  • Handling error cases gracefully
  • Updating information regularly
  • Using an AsyncTask
  • Doing network operations independent of the Activity lifecycle

Stage 2

Objective: add a Settings Screen to the News Feed app you made earlier in Part 1 which will allow users to narrow down the stories displayed in from the feed. The available preference options presented to the user will be left up to you to decide (e.g. publishing time, country, topic category, etc. )

In this second and final stage, you'll add a preference screen to the News App you've already created.

Note: the app is using a test key for The Guardian API. If the API rate limit has exceeded, you need to add your own API key to the code.

NewsActivity Settings Menu Icon Stage 2 Settings Activity

This project is about combining various ideas and skills we’ve been practicing throughout the course. They include:

  • Implement the Preference Fragment
  • Launch a Settings Activity from a menu in the Main Activity
  • Use Uri.Builder class to add query parameters to the URL
  • Update and display the Preference Summary

Resources used in this project

Reflections

  • Had fun combining this project with things learned from the previous ones

Back to Top