La mia azienda impiega persone che aggiungono e modificano record in un database PostgreSQL utilizzando un'interfaccia web. Questi aggiornamenti devono quindi essere compilati in un'app mobile (Android, iOS) tramite SQLite e rilasciati come una nuova versione ogni pochi mesi. Non siamo ancora riusciti a "hot patching" del database SQLite; vale a dire scaricando gli aggiornamenti dal server invece di ricompilare l'app con i nuovi dati scaricati durante il processo di compilazione.
Mi chiedo quale sia il processo tipico qui - come ottenere da un server all'altro. Il mio pensiero iniziale è quello di scrivere uno script per:
- scarica i dati (come JSON) che devono essere compilati nell'app
- usa la libreria SQLite per costruire il database e importare i dati
- comprimi / crittografa il database
- inserisci il database nella cartella di asset corretta per iOS e Android
Sembra un approccio ragionevole, ma mi chiedo se c'è un modo migliore, o se c'è qualche processo che è più standard. Ci sono avvertenze per questo approccio?
E so che potrei esporlo ai clienti tramite un'API REST. Questo è fondamentalmente quello che sto facendo per l'aspetto del "download". Tuttavia, questo non è ciò che il capo vuole fare, quindi questo è il modo in cui deve essere. Sto chiedendo se il mio approccio (scaricare un'esportazione JSON, importare quei dati, ecc.) Sia un approccio decente, o se ad es. scaricando tramite psql e facendo un po 'di magia con questi dati) sarebbe meglio per ciò che dovevo realizzare: ottenere i dati PostgreSQL dal web in un database SQLite locale.