Terug naar de vorige pagina

android-vinyla - 2022

- Screenshots van de applicatie:

Welkom scherm: de gebruiker wordt begroet door een welkom scherm met een willekeurige achtergrond van albumhoezen.

image

Login en registreer scherm: alle gegevens zoals wachtwoord- en emailvereisten worden gecontroleerd. Ook een al gebruikt emailadres kan niet meer gebruikt worden.

image

Hoofd scherm: de gebruiker kan meerdere artiesten aanduiden en vervolgens klikken op 'create station'. De streamingservice kan ingesteld worden via de instellingen knop.

image

- Doel van de app:

De bedoeling is om met een eenvoudige login je favoriete artiesten te zien in een handige lijst. Deze data haal ik uit mijn vorige project, vinyla, van het vak webapplicaties IV.

De gebruiker kan meerdere artiesten aanduiden door op de foto van een artiest te drukken. Vervolgens kan de gebruiker ervoor kiezen om een persoonlijk station / playlist af te spelen van de gekozen artiest(en). Hiervoor verwijst de app automatisch naar door de gebruiker gekozen muziek-streaming app. Deze kan worden ingesteld via de instellingen knop.

- Hoe vinyla voor Android werkt:

Origine vinyla:

Voor het vak Webapplicaties IV had ik een databank, API en webapplicatie geschreven waarbij de gebruiker zijn / haar favoriete albums kan opzoeken en toevoegen als favoriet, om er zo een mooi overzicht van te kunnen hebben.

Deze kan u hier terugvinden.

API's:

De applicatie maakt gebruik van 3 verschillende API's om zo tot het einddoel te komen:

  1. vinyla-API: zelfgeschreven om de gebruiker zijn / haar favoriete albums op te halen.
  2. Spotify-Token-API: een Spotify API om een vertrouwde token te kunnen ontvangen. Deze token is nodig om gebruik te maken van de volledige Spotify-API in stap 3.
  3. Spotify-API: een andere Spotify API om met een query de foto's op te halen van de gezochte artiesten.

Werkwijze app:

  1. Gebruiker logt in met zijn / haar logingegevens.
  2. De app communiceert met vinyla-api om te controleren of de logingegevens correct zijn en krijgt een BearerAuth Token terug.
  3. Er wordt gecommuniceert met de Spotify-Token-API om een vertrouwde BearerAuth Token te krijgen van Spotify.
  4. Met de vinyla-token worden alle favoriete albums van vinyla gehaald.
  5. Aantal albums worden gefilterd per artiest, gesorteerd op hoe vaak een album van een artiest voorkomt. Deze lijst wordt gelimiteerd tot maximaal 30 artiesten.
  6. Aangezien Spotify een limiet heeft gesteld van batch-requests worden alle artiestenfoto's één voor één opgehaald van Spotify-API, samen met de Spotify-token.
  7. De gebruiker stelt zijn / haar favoriete muziekstreamingdienst in via de instellingen knop.
  8. De gebruiker duidt enkele artiesten aan en klikt vervolgens op de 'create station' knop om zo een persoonlijk station te ontvangen op zijn / haar gekozen steamingservice. (Het effectief afspelen van de muziek is niet geïmplementeerd.)

- Vereisten opdracht die toegelicht kunnen worden:

- Testen:

Alle schermen worden getest met behulp van het Espresso framework. Onderliggende code zonder de schermen effectief te gebruiken zijn niet gelukt om te testen.

De welcomeFragmentVisible test werkt alleen wanneer deze als eerste wordt uitgevoerd. Anders denkt de applicatie dat er al een gebruiker is ingelogd en wordt het welkoms scherm niet weergegeven.

image image

Eerste designs:

Designs gemaakt in Figma met de UI van iOS maar zijn geprogrammeerd voor Android.

image image