- David José Cardona Nieves
Table of Contents
For spanish version, check README_es.
This project is an implementation of a mobile application for the consumption of NASA's NeoWs API (api.nasa.gov).
Requirements:
- The application must be able to be installed on Android version 6.0 Marshmallow or later.
- The application must have user registration, login and logout.
- All data must be stored in a local database (SQLite).
- It must have a minimum of 4 windows.
- List the data from the Asteroids table in the main window after pressing a button that downloads the data from the API.
- When selecting an item from the asteroids list, navigate to a window that shows all the information.
- The asteroid records listed on the main page should correspond only to the logged-in user.
- Use Git as version control and upload the project to a public repository in GitHub/GitLab.
- Generate project documentation (README.md) specifying programming language, database used, libraries used, API information, libraries used, API information and if necessary a user guide of the application including screenshots.
The system has been tested on Poco X3 Pro device running Android 12 (MIUI 13).
This project was built using the following tools/libraries:
Get all Near Earth Objects (NEO) from a certain date range:
GET https://api.nasa.gov/neo/rest/v1/feed?start_date=START_DATE&end_date=END_DATE&api_key=API_KEY
Parameter | Type | Description |
---|---|---|
api_key |
string |
Default: "DEMO_KEY" (30 requests/hour) |
start_date |
string (date format) |
Default: "2023-04-28" (interview date) |
end_date |
string (date format) |
Default: "2023-04-28" (interview date) |
- Operating system: Android Studio is available for Windows, macOS and Linux. To use Android Studio, you will need a compatible and up-to-date operating system.
- Hardware: Your computer should have at least 8 GB of RAM, 2 GB of free disk space and a processor with at least four cores.
- Java Development Kit (JDK): Android Studio requires that you have Java 8 JDK or higher installed on your system to compile Android applications.
- Android SDK: Android Studio also requires that you download and install the Android SDK development tools to build Android applications. This includes the Android SDK, build tools, system images, and other resources needed to build and test your application.
- Android device or emulator: To test and run your application, you will need an Android device connected to your computer or an Android emulator configured in Android Studio.
First, you need to clone the repository from GitHub. To do this, you can open a terminal and run the following command:
git clone https://github.com/DavidLakeT/lumos.git
After you've got your API Key at api.nasa.gov you can check the How to create and run your app tutorial by Google Developers team.
The APIKey must be set on the app/res/raw/config.properties file.
The application offers the user the possibility of registering by entering information such as first name, last name, ID and others. It also presents the functionality to log in. When any of these options is done correctly, the user will be presented with a view of the list of asteroids built with the information acquired from the API.
If the user wishes to consult the information in more detail, he/she can click on any asteroid in the list and access a menu with more precise information.
Here are some aspects that could be considered for future implementation of the project:
- Possibility to filter asteroids (by size, name, velocity, etc.)
- Dark mode UI
- Password encryption
- Multi-language Support
- Spanish
- English
If you have any recommendations, you can create an issue (here) specifying what you are raising and give rise to debate on the idea.
Distributed under the MIT License. See LICENSE.txt
for more information.
David Cardona - Instagram - Linkedin - djcardonan@eafit.edu.co
Project Link: https://github.com/DavidLakeT/lumos