Týden 7
Úkol 6
-
Implementujte stahování a parsování dat pomocí OkHttpClient (http://square.github.io/okhttp/)
-
Pro stahování použijte AsyncTask
-
Implementujte akce pro správné stahování dat, nedostupnost internetu nebo nemožnost parsování dat
-
Zacházejte s AsyncTaskem správně - nesmí leakovat, když aktivita ukončí svůj cyklus
-
pozor na otočení obrazovky!
-
-
-
Nahraďte mock data za reálná z API z druhého úkolu
-
Data držte zatím v paměti -> singleton
-
Použijte discover api http://docs.themoviedb.apiary.io/#reference/discover/get
-
Např. si nechte zobrazovat filmy s nejlepším hodnocením navrchu (?sort_by=avg_rating.desc)
-
Příklady možných prohledávání filmů https://www.themoviedb.org/documentation/api/discover
-
Použijte svou kreativitu na seznam filmů, které byste chtěli mít zobrazeny na úvodní obrazovce
-
Kdo nemá kreativitu:), zobrazte filmy, které vycházejí od "dnes" do 7 dnů a v druhé sekci filmy, které běží momentálně v kinech
-
RecyclerView musí obsahovat minimálně dvě sekce
-
-
Na parsování použijte např. Gson parser
-
Vytvořte k němu všechny potřebné modely a použijte anotace
-
Stačí definovat jenom potřebné atributy, které chceme použít. Ostatní atributy z JSONu budou parserem ignorovány
-
-
-
Na stahování obrázků použijte Picasso nebo Glide (nebo Fresco, nebo UniversalImageLoader - je to jedno, hlavně to nedělejte ručně)
-
Můžete zkusit všechny a na hodině poté přednést, který byl lepší z hlediska použití, paměti, rychlosti, možností...
-
Nezapomeňte na cachování do paměti, a nebo i na disk
-
sledujte, kdy se načítá obrázek z cache, kdy z disku, kdy ze serveru (v Picassu na to jsou debugIndicators)
-
-