Ci scusiamo per la lunga domanda, ma voglio essere sicuro di definire chiaramente il mio problema.
Per la mia tesi (nell'ingegneria aerospaziale, quindi non molta esperienza di programmazione), voglio sviluppare un'applicazione mobile (prototipo) che faciliti la segnalazione di eventi legati alla sicurezza nell'aviazione africana. Sebbene il contenuto della mia tesi si concentri sugli aspetti più tecnici e sociologici della sicurezza (gestione), ho deciso di includere alcuni progetti pratici a scopo dimostrativo.
Considerando i criteri che presenterò di seguito, la mia prima ipotesi è di sviluppare un'app mobile utilizzando PhoneGap o qualcosa di simile. Ma la vita non può essere così semplice, quindi avrò bisogno di qualcosa di più di un semplice quadro. La mia domanda è, quale approccio conveniente ed efficace sarebbe quello di soddisfare la seguente descrizione?
Semplicemente questo è ciò che immagino (in parole povere):
- Un utente (pilota, equipaggio di terra, ecc.) sperimenta o nota un evento relativo alla sicurezza
- L'utente compila un modulo (Air Safety Report) sull'evento sul suo telefono
- Ulteriori informazioni (foto / video) sono allegate
- Una volta disponibile una connessione Internet stabile (siamo in Africa) il rapporto / modulo viene inviato a un server.
Ecco alcune considerazioni importanti:
- La disponibilità limitata di internet - > Ho bisogno di una soluzione / app nativa / autonoma in modo che il giornalista non abbia tempo di attesa con i rapporti e che memorizzi i dati e li invii una volta possibile.
- Non voglio - né dovrebbe - escludere i potenziali utenti (per molteplici ragioni) - > L'app dovrebbe essere disponibile su quante più piattaforme possibili (specialmente BlackBerry e Symbian sono ancora molto popolari in Africa!).
- Lo sto facendo come una forma di aiuto allo sviluppo e voglio che sia disponibile a buon mercato - > open source preferibilmente.
Complessivamente, è possibile definire i seguenti criteri: Dovrebbe
- essere open-source
- supporta più piattaforme
- consenti i file allegati (principalmente le immagini)
- essere autonomo / nativo
- supporto / consenti i servizi web
- fornire la geolocalizzazione e il supporto per data / ora (automatizza la localizzazione del rapporto)
- consentire l'utilizzo della fotocamera per l'allegato diretto (opzionale, ma preferibile)
- identifica una connessione Internet e invia i dati una volta possibile
- memorizza i dati fino all'invio
Oltre a PhoneGap (che non supporta la navigazione nelle librerie di immagini? - > apparentemente è possibile, vedere la documentazione di supporto), ho preso in considerazione i seguenti framework:
- Mobl (non testato per tutte le principali piattaforme, nessun supporto per data / ora?)
- QuickConnect (non supporta BlackBerry e Symbian)
- Rodi (soddisfa i miei requisiti per quanto posso vedere)
- Appspresso (non supporta BB e Symbian, nessuna selezione di date)
Ho letto il seguente thread su StackOverflow: