Skip to content

Berthje/skyeye-documentation

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 

Repository files navigation

NMA documentation

Groupmembers

Group 14

  1. Berth Layton
  2. Dewulf Kemp

Project summary

Sky Eye is a flight tracking application designed to provide users with real-time information about flights and airport activities. The users will be able to see an overview of all current flights presented on a world map + a list with all big airports and aircraft types. What sets Sky Eye apart is its innovative Augmented Reality (AR) feature that allows users to identify airplanes in the air with their camera.

Requirements

ℹ️ Legend

  • ✔️ = Implemented
  • ❌ = Not implemented
  • ⌛ = Work in progress
Status Description Details
Must have (12/20)
✔️ Build a multiscreen app (at least 4 screens) using the Jetpack Navigation component Go to screenshots
✔️ Use Jetpack Compose with Kotlin to build your screen layout (use at least 4 different elements with mandatory: a scrollable List, Button, Text and Image) Go to screenshots
✔️ Create a menu-based navigation and bottom navigation Go to screenshots
✔️ Use the Android app architecture (ViewModel – State in Compose)
✔️ Use a local Room database to store user data persistently Go to Room database
✔️ Use Retrofit to communicate with an API service Go to API request
✔️ Schedule at least 1 background task using the Workmanager Go to workmanager
✔️ Use at least 2 Implicit Intents Go to intents
✔️ Write significant tests to make a robust app (code coverage at least 90%) Go to screenshots
✔️ Implement a custom application theme using MaterialDesign with a custom app icon Go to screenshots
✔️ Generate an installable APK
Intermediate - self learning topics (14+/20)
✔️ Notifications Go to notifications
✔️ Canvas and animations Go to canvas & animations
Sensor data (GPS, motion, position, environmental)
Experienced - self learning topics (16+/20)
✔️ Use the CameraX library Go to camera
Use the ML Kit to add new experience features to your app (Vision and/or Natural Language API)

Overview app

Screenshots

Give screenshots for every screen in the application.

Custom App Icon Loading Screen Homepage Login Register Forgot Password Account Settings Drawer Expanded Settings Appearance in settings Appearance in settings darkmode enabled Support About Filter modal expanded Maptype modal expanded Weather layer modal expanded Camera screen Aircraft types list Aircraft detail Airport list Airport detail

Room database

We have a database that currently stores 2 things:

  • User login information:
    Account Settings
  • Appearance settings:
    Appearance in settings darkmode enabled

API request

We use an API to retrieve airport details:
Airport detail

Intents

  1. Support email: On the support page, clicking the email address opens the email app.
    Open email app intent
  2. Maps: On an airport page users can click a button to show the airport on their map app.
    Open google maps app intent

Workmanager

If the app has not been opened for 2 days, the workmanager will send a push notification to increase user engagement. notifications uses workmanager

Notifications

If the app has not been opened for 2 days, the workmanager will send a push notification to increase user engagement.
notification ui

Canvas and animations

Canvas is used to show airport markers on the map.
Canvas to render markers

Sensor data

Optional: not implemented.

Camera

When a user wants to know what an airplane in the sky is, they can use the built-in camera AR feature.
Camera Screen

ML kit

Optional: not implemented.

Repositories

Link movie

Link to Google profile accounts

About

Documentation for aviation app SkyEye

Topics

Resources

Stars

Watchers

Forks