Questa non è una domanda di codice, dato che non sto aggiungendo alcun codice qui. Dal momento che, aggiungendo i miei frammenti di codice, questa domanda sarebbe davvero lunga. Invece, sono piuttosto interessato a conoscere modi migliori per il recupero dei dati sull'applicazione che deve gestire una quantità limitata di dati che non viene aggiornata regolarmente. Prendiamo questo esempio:
Sto scrivendo un'applicazione che ottiene una pianificazione come XML dal server. Ho scritto una logica per analizzare la versione XML e aggiornare il database solo se la versione è più recente della versione locale. Sebbene l'aggiornamento sia controllato automaticamente / manualmente su base giornaliera in base alle preferenze dell'utente, l'aggiornamento della versione effettiva avviene solo una volta ogni pochi mesi. Dal momento che, questo viene fatto da qualche altra autorità che non fornisce API ma, piuttosto, informa pubblicamente sulle loro modifiche.
L'XML effettivo contiene un "(n numero di gruppi) (giorni in una settimana) (n numero di programmi)". Il gruppo è in genere 6 e il numero di pianificazione è in genere 2. Quindi in pratica di solito ci sono solo circa 100 stringhe.
Ora, anche se al momento ho usato SQLite. Voglio sapere come fare l'aggiornamento sul database. Dovrei mostrare la finestra di dialogo dell'avanzamento che l'applicazione sta aggiornando e uscire dall'app quando è terminata? Poiché i miei aggiornamenti non sono frequenti, non penso che ciò danneggi davvero l'esperienza utente, ma c'è qualche modi migliori per farlo? Perché non voglio che venga eseguito l'aggiornamento quando l'utente sta effettuando una ricerca che viene eseguita utilizzando il database. Ciò causerà un'eccezione già aperta del database. Almeno prima ho affrontato questo problema.
È preferibile analizzare l'XML ogni volta che l'utente vuole visualizzare determinate cose o utilizzare SQLite? Dato che, per creare elenchi, faccio un sacco di uso dell'adattatore nella mia app, questo si degraderà la prestazione?
Sarebbe davvero di grande aiuto se qualcuno mi può dare una migliore visione d'insieme. O può essere contro-argomentazione contro ciascuno.
Grazie mille!