Opdracht 2 APP-BI & 3 IoT 2019 - 2020

Voor het vak Cordova programmeer je individueel een Android App. Het onderwerp mag je zelf kiezen. Zorg er wel voor dat je een onderwerp kiest dat zinvol is als applicatie op een smartphone en/of tablet. Gebruik je fantasie en kies een onderwerp waarmee je creatief aan de slag kan. Dus liefst geen programma met veel gegevensinput, daarvoor is zo'n mobiel toestel sowieso niet geschikt. Maar wel een programma waarmee je de functionaliteiten van je smartphone of tablet ten volle benut. Je project moet bovendien voldoen aan een aantal minimumvereisten.

Minimumvereisten

1. User Interface

Ontwerp een SPA-app met minstens vier tabs.

  1. Eén van die tabs is een info-scherm. In dit scherm komen je persoonlijke gegevens (naam, e-mail, GSM, …) en wat extra informatie over de app.
  2. Voorzie een SMS en TEL-link naar je GSM-nummer.
  3. Uiteraard heeft je app een aangepast start-icoon.
  4. Maak ook een aantrekkelijke user interface.
    De CSS hiervoor kan je volledig zelf schrijven, maar je mag natuurlijk ook vertrekken van een bestaand framework (Materialize, Bootstrap, Framework7, Kendo UI, …)
  5. Voor het menu mag je kiezen tussen een sideNav of een knoppenbalk met icoontjes.
  6. Gebruik ook minstens één Cordova plug-in (≠ jQuery plug-in) die we NIET in de les gezien hebben.
    (zie: plugins).
2. Networking (AJAX)

Heel belangrijk voor de app is dat je ook informatie/data uitwisselt.

  1. Voor de App - Bi studenten: met een online dienst of via een eigen database.
  2. Voor de IoT studenten: met een IoT device (Raspberry Pi, Arduino, ...).
3. Lokale Data

Naast de gegevens ophalen, moet je app ook gegevens lokaal bewaren. Hiervoor gebruik je best Local Storage omdat deze op bijna alle platformen wordt ondersteund. (Zie Todo app).

4. Applicatie publiceren

Host op SIN (of elders) een aantrekkelijke webpagina waarin je je APK-file aanbiedt. Zorg ervoor dat die pagina soortgelijke informatie aanbiedt als de pagina’s van de Play Store.

Je toont op je hosting dus minstens:

  1. De naam van de app en van de ontwerper.
  2. Enkele schermafbeelding.
    Een handige tool hiervoor is https://www.vysor.io/.
  3. Een korte omschrijving van de functionaliteiten van de app.
  4. Een link of QR-code naar APK-file.
    Bijvoorbeeld: http://nl.qr-code-generator.com/.

Beoordeling

Bij de beoordeling van je programma wordt gelet op de originaliteit van je onderwerp, de complexiteit van je programma, de grootte van je project, de leesbaarheid/onderhoudbaarheid van je programmacode, de stabiliteit van je programma, de gebruiksvriendelijkheid, het ontwerp van je UI, het al dan niet voldoen aan de minimumvereisten, …

Ga op een doordachte manier na hoe je de online voorbeeldcode in je project verwerkt. Neem deze code niet blindelings over! Optimaliseer deze code voor je project en vertaal ze naar jQuery en werk volgens het Revealing module pattern.

  1. Dus niet: document.getElementById(“abc”).xxxx (= standaard JavaScript).
  2. Maar wel: $(“#abc”).yyyy (= jQuery equivalent van voorgaande lijn)
  1. Tijdens de les zijn er twee deadlines waarop je informatie i.v.m. je app aan je docent moet doorgeven (10%).
  2. Voor een werkend project dat aan alle eisen voldoet, verdien je 40% van de punten.
  3. De overige 50% staat op de moeilijkheidsgraad van het project, optimalisatie, structuur en leesbaarheid van je code.

Deadlines

Deadline 1: korte omschrijving (wo 2 oktober)
  1. Download het sjabloon.
  2. Vul alle gegevens in (titel project, naam, ...) en voeg een foto van jezelf toe.
  3. Bewaar het bestand als Naam_Voornaam_klas_groep.docx.
  4. Beschrijf kort (10-tal lijntjes) de app die je gaat uitwerken.
  5. Upload het bestand naar Canvas.
  6. Tijdens de les overlopen we het document en controleren de haalbaarheid.
Deadline 2: schermafbeeldingen + plug-ins (woe 23 oktober)
  1. Pas, indien nodig, de korte omschrijving verder aan.
  2. Maak een lijstje met alle Cordova plug-ins die in je project verwerkt zijn.
    Noteer de naam van de plug-in, de code om deze te integreren en beschrijf kort waarom je de plug-in nodig hebt.
  3. Maak van elk tabblad in je app een schermafdruk.
    Je kan een schermafdruk nemen vanuit Chrome (via chrome://inspect/#devices) of via de gratis versie van Vysor.
  4. Upload het bestand naar Canvas.
Deadline 3: definitieve versie indienen (zo 24 november).
  1. Vul de URL in waar je de applicatie, het apk-bestand, kan downloaden (zie info Applicatie publiceren.)
  2. Maak één zip-bestand (Naam_Voornaam_klas_groep.zip) met daarin ENKEL de bestanden/mappen resources, www, config.xml, het Word document en package.json. De overige mappen NIET mee inpakken.
  3. Upload het zip-bestand naar Canvas.
    Upload zip met deze bestanden
Deadline 4: definitieve versie HEREXAMEN indienen (zo 16 augustus).
  1. Vul de URL in waar je de applicatie, het apk-bestand, kan downloaden (zie info Applicatie publiceren.)
  2. Maak één zip-bestand (Naam_Voornaam_klas_groep.zip) met daarin ENKEL de bestanden/mappen resources, www, config.xml, het Word document en package.json. De overige mappen NIET mee inpakken.
  3. Upload het zip-bestand naar Canvas.
    Upload zip met deze bestanden

Verdediging project (november - december)

Mee te brengen naar de verdediging:

  1. Definitieve, uitgeprinte versie van het Word-document.
  2. Breng alles mee wat je nodig hebt om de app te demonstreren.
    Dit kan ook aan de hand van een filmpje.
  3. Breng ook je laptop en Android toestel mee zodat je de broncode en een werkende app kan tonen.

Verdediging project HEREXAMEN (augustus)

Breng in orde voor de verdediging:

  1. Open op je laptop alles wat je nodig hebt (editor, emulator,...) om de broncode te bekijken.
  2. De werking mag je eventueel aan de hand van een vooraf opgenomen filmpje illustreren.