GithubHelp home page GithubHelp logo

air2223's Introduction

myCar

 

Logo aplikacije:


Slika 1: Logo aplikacije [autorski rad]

 

Članovi tima:

1. Matej Forjan

2. Ivan Kučan

3. Denis Matijević

4. Otto Miler Matulin

5. Ana Druga

 

Opis funkcionalnosti mobilne aplikacije:

myCar je mobilna aplikacija koja korisniku omogućava upravljanje nad vozilima. Kako bi mogao koristiti aplikaciju, korisnik se najprije mora registrirati te prijaviti. Nakon uspješne prijave u aplikaciju, korisnik ima mogućnost unosa vozila s kojim može nadalje upravljati. Korisnik ima mogućnost dohvaćati osnovne podatke o vozilu (marka, model, broj prijeđenih kilometara, razina goriva, broj kilometara do sljedećeg servisa...). Osim toga, korisnik može upravljati unesenim vozilom tako što može paliti ili gasiti vozilo, kratka svjetla, duga svjetla, podići ili spustiti parking kočnicu, dodati gas, kočiti, kretati se u raznim smjerovima. Prilikom upravljanja vozilom, korisnik odabire modul kojim se odabire način prikaza kontrola za upravljanje vozilom. Na karti je prikazana trenutna lokacija korisnika te benzinske postaje u gradu Varaždinu. Korisnik prima upozorenja za uneseno vozilo te obavijesti aplikacije. Osim toga, korisnik ima mogućnost pregleda svih unesenih vozila (Moja garaža) gdje može dodati novo vozilo, mijenjati trenutno odabrano vozilo ili brisati vozilo. Na kraju, korisnik se odjavljuje iz aplikacije.

 

Korištene tehnologije:

Za izradu mobilne aplikacije koristilo se razvojno okruženje Android Studio u programskom jeziku Kotlin. Mobilna aplikacija povezana je s bazom podataka i serverom. Baza podataka hostana je na besplatnom serveru 000webhost. Baza podataka izrađena je u alatu MySQL Workbench, a zatim importana u phpMyAdmin gdje su se izrađivali SQL upiti te popunjavali podaci unutar tablica. Mobilna aplikacija šalje i prima zahtjeve prema bazi podataka pomoću Volley biblioteke GET i POST metodom. Tijekom slanja zahtjeva pozivaju se PHP skripte pomoću kojih se dohvaćaju traženi podaci i šalju prema aplikaciji. Server se nalazi na Linuxu i komunicira s mobilnom aplikacijom pomoću HTTP protokola, a izrađen je u programskom jeziku C++. Komunikacija između aplikacije i servera je sigurna što se implementiralo koristeći TLS protokol. Od ostalih alata prilikom izrade mobilne aplikacije, koristio se alat Balsamiq za izradu skice, alat Figma za izradu prototipa, tekstualni uređivač Visual Studio Code.

 

Arhitektura programskog proizvoda:


Slika 2: Arhitektura programskog proizvoda [autorski rad]

 

Arhitektura programskog proizvoda podijeljena je na dvije osnovne cjeline: klijentska i poslužiteljska strana. Unutar klijentske strane pripada mobilna aplikacija, RESTful API te baza podataka. Unutar poslužiteljske strane (Car Server) pripada Network te Car API.

RESTful API zadužen je za komunikaciju između mobilne aplikacije i baze podataka (slanje i primanje zahtjeva – GET, POST metode), koristeći Volley biblioteku. Komunikacija između aplikacije i Car API-a odvija se sigurnim putem (koristi se protokol TLS). Korisnik ima mogućnost uporabe različitih funkcionalnosti aplikacije, među kojima se ističe upravljanje vozilom putem iste, a proces komunikacije odvija se u pozadini. Komunikacija između Servera i CAR API-a odvija se sigurnim putem koristeći TLS protokol. Car API  ima ulogu sučelja automobila i prikazuje trenutne informacije o aktivnom vozilu, a pokreće se preko OS Linux.

Mobilna aplikacija šalje i prima zahtjeve od strane Servera za dohvaćanje trenutnih podataka o vozilu te ih prikazuje u aplikaciji.  

 

Instalacija:

Koraci za pokretanje mobilne aplikacije myCar:

  1. Preuzeti i instalirati Android Studio na Vaše prijenosno ili stolno računalo
  2. Klonirati repozitorij
  3. Pokrenuti server i Car API na Linuxu putem terminala
  4. Otvoriti aplikaciju u Android Studio te ju pokrenuti
  5. Koristiti emulator za pokretanje aplikacije ili spojite Vaš Android uređaj za pokretanje

 

Slike zaslona mobilne aplikacije:

Pocetni_zaslon Registracija Prijava

Početni zaslon

Registracija

Prijava

Moj_auto Informacije_o_vozilu Upozorenja_vozila

Moj auto

Informacije o vozilu

Upozorenja vozila

Kontole_v1 Kontrole_v2 Prikaz_karte

Kontrole za upravljanje vozila v1

Kontrole za upravljanje vozila v2

Prikaz karte

Moj_profil Prikaz_obavijesti Moja_garaza

Moj profil

Prikaz obavijesti

Moja garaža

air2223's People

Contributors

denismatijevic0901 avatar forky10911 avatar otto2m avatar ivankucan avatar 101matej avatar adruga511 avatar

Watchers

Zlatko Stapić avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.