Skip to content

domonkosadam/BME-MobWeb-HF-GameSales

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Házi feladat specifikáció

Információk itt

Mobil- és webes szoftverek

2022.10.17.

Game Sales

Domonkos Ádám - (CWGYWC)

Laborvezető: Kapus Ádám

Bemutatás

A CheapShark API-jával szeretném elkészíteni az alkalmazást. Azoknak a fiataloknak lesz hasznos, akik akciós játékokat szeretnének vásárolni.

Főbb funkciók

Az alkalmazás megjeleníti egy listában az aktuális akciókat. Ezt a listát különböző paraméterek alapján lehet szűrni. Egy elemre kattintva meg lehet nézni a a játék részleteit. Innen meg lehet nyitni az adott akció alkalmazásboltját, ahol akár meg is lehet vásárolni.

CheapShark API Az API eléréshez a Retrofit libraryt fogom használni.

Választott technológiák:

  • UI: Fragmentek, NavigationComponenttel
  • RecyclerView: Játékok listájának megjelenítéséhez
  • Hálózat kezelés: Az alkalmazás a CheapShark API-t használja, és REST végponton keresztül tölti le az adatokat.
  • Adatbáziskezelés: Internet nélkül a legutóbbi elemek jelennek meg.
  • Intent: Implicit intent az alkalmazásboltok megnyitásához.

Házi feladat dokumentáció

Architektúra

A házi feladat az Android Jetpack-ben bevezetett ViewModel architektúra szerint készült. Ennek előnye, hogy az adatok és a megjelenítés elkülönül. Így sokkal átláthatóbb kódot kapunk, illetve az adatok megmaradnak a képernyő megsemmisülése esetén is.

Az API hívásokat Repository mintával készítettem el a Retrofit nevű library-val. Így az adatokat kezelő függvények elkülönülnek a megjelenítést végző objektumoktól. A State objektumokkal felhasználóbarát módon le tudtam kezelni a hibákat és a töltőképernyőt.

Felhasználói felület

Az alkalmazás támogatja az éjszakai módot is.

A CheapShark API-tól lekért akciós játékokat egy listában jelenítem meg. Mivel a képek internetes áruházakból vannak, így a Glide libraryval jelenítem meg a kapott URL-ket.

A Steam API-tól lekért PC követelményeket egy lenyitható nézetben jelenítem meg, hogy a néha túl hosszú leírások ne zavarják a felhasználót.

Ha megtetszik egy játék a gomra kattintva egy implicit intent-tel megnyitható a böngészőben az áruház, ahol meg lehet vásárolni a játékot.

Perzisztens adattárolás

Ha valami hiba történt az API hívás során, vagy nincs internet kapcsolat, a legutóbb letöltött adatokat jeleníti meg az alkalmazás. Ezeket az adatokat a Room library-val kezelem.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages