2015-10-26 24 views
8

Da quello che ho capito offline prima le app hanno bisogno di un modo per dire se l'utente è connesso; in caso contrario, memorizza le modifiche localmente e si sincronizza con il server remoto quando è online.È possibile creare prima app offline con React-Native?

Il modo in cui ho trovato a che fare con le app Web è utilizzando pouchdb sul client che comunica con un'API collegata a un database couchdb. O utilizzando Firebase.

È possibile avere funzionalità simili utilizzando React-Native? Forse usando l'adattatore pouchdb-async-storage. Ci sono altre alternative là fuori per la sincronizzazione dei dati local-remote?

+0

Secondo @modusjesus utente [reddit] (https://www.reddit.com/r/reactnative/comments/ 3q8l6x/is_it_possible_to_create_offline_first_apps_with /): È estremamente difficile perché il runtime è sospeso quando lo schermo è bloccato. Non c'è ancora stata una soluzione a questo. – HairLessDude

+0

Hai trovato una soluzione a questo? Questo è esattamente quello che sto cercando di fare. – kevando

+0

Non ho più cercato ... quindi immagino di no. – HairLessDude

risposta

1

Non ho effettivamente implementato le funzionalità offline in un'app React-Native, ma osservando i documenti, le API fornite consentono di farlo.

Le API che stai cercando sono AsyncStorage (per la persistenza dei dati) e per rilevare le informazioni di connessione utilizzare NetInfo.

Sei sulla strada giusta per l'utilizzo di pouchdb. La parte che probabilmente dovrai scrivere tu stesso è lo script di sincronizzazione (non sono sicuro che tu possa farlo in background ma potrei sbagliarmi).

Fammi sapere come si ottiene o se si vuole discutere ulteriormente @hugo__df su Twitter :)

3

ho costruire un adattatore per AsycStorage PouchDB, tra cui polyfills per React-native. Correttamente ciò aiuta.

asyncstorage adapter for PouchDB

+0

Questo potrebbe essere esattamente quello che stavamo aspettando. – HairLessDude

+1

Il progetto è stato spostato su [GitHub] (https://github.com/stockulus/pouchdb-react-native)/[npm] (https://www.npmjs.com/package/pouchdb-react-native) – stockulus

1

pouchdb-reagiscono-native è un buon lib guardare