-
Notifications
You must be signed in to change notification settings - Fork 5
Bak senen
UTDATERT ETTER v0.1.0
Dette er en introduksjon for de som har lyst til å være med å programmere, det er ment som en oversikt over arkitektur slik at utenforstående kan komme inn i arkitekturen.
Under er en grafisk fremstilling av arkitekturen.

Sentralt er WeatherContentProvider, dette er en database der værvarslene blir lagt inn og hentet ut. WeatherService har ansvaret for å hente ned varslene, den skal sørge for at alle steder/Places har et oppdatert varsel, den henter også varsel for nærmeste sted og sletter ut-daterte varsler. YrProxy er klassen som henter ned værvarslet fra api.met.no, den henter ut informasjonen fra xml filen og lagrer dataen i tre tabeller "meta" som har meta informasjon om varslet, "forecast" som har alle varsler som fulgte med xml og "forecastListView" tabellen som er strukturert slik at "ForecastListActivity" effektivt kan hente ut den dataen som trengs for værvarsel.
Dette skjer når en skal tegne widgeten:
- Posisjonen blir hentet 2. WeatherService går igjenom alle værvarslene som er lagret og sjekker om det finnes et varsel som er innenfor target zone (per i dag 2km radius og 100 m vertikalt) 3. 1. Hvis det finnes et varsel blir det sendt en Uri tilbake til widgetService som er en peker til hvor varslet kan hentes fra i ContentProvideren 2. Hvis det finnes et varsel men det er utdatert blir det gamle varslet sendt til WidgetService, men den starter også å laste ned et nytt varsel. Når det nye varslet er ferdig blir Urien sendt til WidgetServicen. 3. Hvis det ikke finnes et varsel blir det lastet ned et varsel og Uri sendt til WidgetService når det er ferdig. 4. WidgetService laster så ned værvarslet fra ContentProvideren og tegner til skjerm.