Cordova
Intro
Cordova és un framework per desenvolupar aplicacions mòbils amb HTML + CSS + JavaScript. Té la gran avantatge que ens permet fer un codi únic per a totes les plataformes disponibles, particularment:
- Android
- iOS
- Windows Phone
- Ubuntu Touch
- Blackberry
- ...i el què vingui a darrera
El desavantatge és que podem trobar-nos amb que la performance és probra (velocitat d'execució de les aplicacions).
Primeres passes
...
Emmagatzemament
El més senzill i convenient és utilitzar el localStorage dels navegadors, per emmagatzemar dades persistents en format JSON, ja que ve integrat al propi JavaScript del navegador (o més aviat la webview) en què s'executa la nostra app.
Plugins
Podeu buscar-ne aquí: https://cordova.apache.org/plugins/
Descàrrega de fitxers
Hi 2 plugins que s'utilitzen per a això: File (permet accés a filesystem) i File Transfer (per descàrregues), però val a dir que fastrde-downloader ens ho resol tot molt més senzillament (els dos primers es fan prou complexe d'utilitzar), inclús descomprimeix Zips:
$ cordova plugin add cordova-plugin-fastrde-downloader
Penseu que si voleu utilitzar les imatges descarregades en el GUI (per evitar accedir a internet), cal resoldre diversos problemes:
- Clarificar quina és la URL adequada per accedir a la imatge descarregada. Es pot saber si utilitzem:
- fileEntry.toURL(): ens dona la URL tipus "file:///data/..." del filesystem
- fileEntry.toInternalURL(): ens dóna la URL interna tipus "cdvfile://localhost/persistent/...". Aquesta és la que ens interessa per col·locar-la al SRC de les imatges del nostre HTML.
- Posar cdvfile:// com a protocol a la whitelist. En config.xml, afegir:
<allow-navigation href="cdvfile://*/*" />
- Assegurar-vos que la vostra API/servei permet CORS (cross-domain calls), sinó potser refusa enviar la imatge o la info JSON