It's an Android application, which allows users to search for cities to see weather summary, look at detailed information about them, pin those cities to favorites and post on Twitter about the weather. Backend service is on Node.js and the app uses API call.
You will find concepts and technologies usage in the app:
- Java, JSON, Android Lifecycle and Android Studio
- Google’s Material design
- Google’s Material design
- Google Maps APIs and Android SDK
- Third party libraries like Picasso, Glide and Volley
- In order to get the current location, you can use either ip-api or location services. For your location fetching code to work, you must request the permission from the user. You can read more about requesting permissions here: https://developer.android.com/training/permissions/requesting.html
- You will need this for various features like getting the current location and using Google Maps in your app. You can learn about setting it up here:
- Volley can be helpful with asynchronously http request to load data. You can also use Volley network ImageView to load photos in Google tab. You can learn more about them here: https://developer.android.com/training/volley/index.html
- Picasso is a powerful image downloading and caching library for Android.http://square.github.io/picasso/ If you decide to use RecycleView to display the photos with Picasso Please use version 2.5.2 since latest version does not support RecycleView well.https://bumptech.github.io/glide/
- In order to create graphs we will use the MPAndroidChart library. Full code and documentation can be found here https://github.com/PhilJay/MPAndroidChart For our purposes following these links should suffice: Creating a LineChart: https://weeklycoding.com/mpandroidchart-documentation/setting-data/ Styling the Legend: https://github.com/PhilJay/MPAndroidChart/wiki/Legend Styling the label: https://stackoverflow.com/questions/28632489/mpandroidchart-how-to-set-label-color
- https://stackoverflow.com/questions/20586619/android-viewpager-with-bottom-dots https://stackoverflow.com/questions/38459309/how-do-you-create-an-android-view-pager-witha-dots-indicator
- https://developer.android.com/training/appbar/setting-up https://stackoverflow.com/questions/38195522/what-is-oncreateoptionsmenumenu-menu
-
To implement the search functionality, these pages will help:
https://www.youtube.com/watch?v=9OWmnYPX1uc
https://developer.android.com/guide/topics/search/search-dialog
Working with the AutoCompleteTextView to show the suggestions might be a little challenging. This tutorial goes over how it is done so that you get an idea of how to go about it. https://www.truiton.com/2018/06/android-autocompletetextview-suggestions-from-webservicecall/
In order to link your Search Bar with autocomplete suggestions, these links might help: https://www.dev2qa.com/android-actionbar-searchview-autocompleteexample/https://stackoverflow.com/questions/34603157/how-to-get-a-text-from-searchview
- There are many ways to implement a splash screen. This blog highlights almost all of them with examples: https://android.jlelse.eu/the-complete-android-splash-screen-guide-c7db82bce565