A pocket helper for all game lovers! The application contains a plenty of features which can help users to manage their personal game collection, browse the latest published/updated games and track the release dates of all favorite games. Also Giant Bomb has a built-in search feature which allows users to load and browse some additional game info like platform descriptions and character profiles.
All game related data provided by Giant Bomb API.
- Clone this repository using
git clone git@github.com:nithin2889/GiantBomb.git
command - Add API_KEY into your gradle.properties file (you can obtain a new API key here)
- Now you can build and install release version of the app using
installRelease
gradle task
- App conforms to common standards found in the Android Nanodegree General Project Guidelines
- App is written solely in the Java Programming Language
- App integrates a third-party library.
- App validates all input from servers and users. If data does not exist or is in the wrong format, the app logs this fact and does not crash.
- App includes support for accessibility. That includes content descriptions, navigation using a D-pad, and, if applicable, non-audio versions of audio cues.
- App keeps all strings in a strings.xml file and enables RTL layout switching on all layouts.
- App provides a widget to provide relevant information to the user on the home screen.
- App integrates two or more Google services. Google service integrations can be a part of Google Play Services or Firebase.
- Each service imported in the build.gradle is used in the app.
- If Analytics is used, the app creates only one analytics instance.
- App theme extends AppCompat.
- App uses an app bar and associated toolbars.
- App uses standard and simple transitions between activities.
- App builds from a clean repository checkout with no additional configuration.
- App builds and deploys using the installRelease Gradle task.
- App is equipped with a signing configuration, and the keystore and passwords are included in the repository. Keystore is referred to by a relative path.
- All app dependencies are managed by Gradle.
- App stores data locally either by implementing a ContentProvider OR using Firebase Realtime Database. No third party frameworks nor Room Persistence Library may be used.
- If it regularly pulls or sends data to/from a web service or API, app updates data in its cache at regular intervals using a SyncAdapter or JobDispacter.
- App uses a Loader to move its data to its views.