2012-10-23 16 views
10

Quello che mi serve è una soluzione (una libreria) per il trasferimento di file da dispositivi mobili (iOS, Android) a sever (PHP). Il requisito di base è che i file dovrebbero essere suddivisi in blocchi in modo che se la connessione dati viene persa nel mezzo dell'invio del file, non è necessario inviare nuovamente l'intero file. Anche l'utilizzo della memoria insufficiente è obbligatorio. Ho pensato a qualcosa come l'approccio p2p. Migliori pratiche?Trasferimento di file robusto dai dispositivi mobili al server

Grazie.

+0

Avete fatto qualche r & d da solo? – 13hsoj

+0

@ 13hsoj No, credo, solo d. Ora suddivisione manuale dei file e invio di blocchi tramite post multipart. Ma le implementazioni differiscono su iOS e Android, quindi stiamo cercando una soluzione completa. –

+0

perché aiutare p2p? Hai ancora bisogno di rimuoverlo dal dispositivo. Quello sarebbe il principale ostacolo. Quindi elimina p2p dal tuo cervello in questo momento. Perché non puoi utilizzare un servizio come Dropbox o Drive? – cbrulak

risposta

8

Consiglierei la richiesta POST. Guarda here per l'utilizzo, l'utilizzo di memoria insufficiente, ma devi gestire tu stesso il file di splitting (che dovrebbe essere molto semplice, basta modificare quella soluzione inviando i dati al server per blocchi salvando la tua posizione effettiva).

+0

Questo è quello che ho adesso. Stavo cercando una soluzione più completa. –

+2

+1 questa sembra la soluzione giusta. Tieni traccia di ciò che hai già inviato. @mighter, se non vuoi sentire le risposte che hai già, forse dovresti pubblicare il tuo codice attuale. – Phil

+0

Il collegamento inviato è una soluzione completa come si ottiene :) – stoilkov

2

C'è una lacuna negli strumenti al momento .. una casella di rilascio open source se ti piace .. Ne sto costruendo uno adesso .. www.nofolder.com è chi siamo, è quasi in beta e includerà un app android .. fondamentalmente NON ci sono buoni strumenti per fare questo .. la cosa migliore da fare è sparkleshare so che hanno un'app per Android

+0

quando/se lo ottieni in una beta e hai un'app per Android e vuoi un feedback postalo su reddit.com/r/androidapps. Terrò un occhio fuori e aiuto se posso. – cbrulak

+0

grazie .. puoi scrivermi conradbate _at_ hotmail _dotcom_ – conners

4

Ti consiglio di usare HTTP come tecnica sottostante.

Su Android vorrei raccomandare la libreria HTTP async di loopj (loopj), in quanto si ottiene un nuovo tentativo automatico, la gestione dei cookie e alcune altre interessanti funzionalità in un pacchetto pulito e facile da usare. Potresti dare un'occhiata in particolare al capitolo "Caricamento di file con RequestParams".

Per suddividere i file dare un'occhiata a questo snippet. In questo caso i file vengono scritti direttamente nel filesystem, utilizzando un altro flusso di output ti permetterà di memorizzare facilmente i blocchi in memoria o ovunque tu voglia. Se l'utilizzo della memoria è di grande preoccupazione, si può provare a leggere il pezzo fino a quando il buffer è pieno e poi direttamente inviarlo al server, leggere il prossimo pezzo, inviarlo, ecc, ecc

Acclamazioni

Problemi correlati