Italian libreria ExternalStorage, aprire un Database su percorso esterno

Paperinik

Member
Licensed User
Longtime User
Buonasera a tutti,
la mia app una un DB sqlite che ho posizionato in DirInternal ma che vorrei anche importare ed esportare in una cartella esterna accessibile per backup e ripristini.
Prima di eseguire le operazioni devo aprire il DB e leggere la data dell'ultima modifica in modo da mantenere il più recente e gestire conflitti.

Sto cercando di utilizzare la libreria ExternalStorage che mi sta facendo impazzire: possibile che non c'è modo di recuperare il percorso completo di directory in modo ca caricare il DB direttamente dal percorso esterno senza doverlo per forza copiare nella DirInternal?
 
Solution
Semplicemente puoi creare un cartella sotto DirInternal una nuova cartella bck
Copi il file in questa cartella , lo apri dalla tua app, leggi il valore di data aggiornamento, lo confronti con quello attuale della DirInternal, e decidi di sovrascriverlo oppure no in base al risultato ottenuto

LucaMs

Expert
Licensed User
Longtime User
Ciao, buongiorno.

in modo ca caricare il DB direttamente dal percorso esterno senza doverlo per forza copiare nella DirInternal?

Da quella frase sembra che tu voglia lavorare sul "DB esterno", ma a quale scopo? E' giusto quello che hai detto all'inizio:
accessibile per backup e ripristini.

In pratica non dovrebbe essere necessario nemmeno conoscere la data di ultimo aggiornamento, l'app dovrebbe lavorare esclusivamente su quello "interno" e in caso di necessità, per ripristinare, sostituire quello interno con quello esterno.

Non capisco come vorresti, invece, che dovrebbe funzionare l'app.
 
Upvote 0

Xfood

Expert
Licensed User
Longtime User
Semplicemente puoi creare un cartella sotto DirInternal una nuova cartella bck
Copi il file in questa cartella , lo apri dalla tua app, leggi il valore di data aggiornamento, lo confronti con quello attuale della DirInternal, e decidi di sovrascriverlo oppure no in base al risultato ottenuto
 
Upvote 0
Solution

Paperinik

Member
Licensed User
Longtime User
Grazie mille per le risposte, mi avete confermato che non c'è possibilità di aprire i file nella cartella selezionata.

Da quella frase sembra che tu voglia lavorare sul "DB esterno", ma a quale scopo? E' giusto quello che hai detto all'inizio:
Voglio solo accedere per leggere la data di ultima modifica
Non capisco come vorresti, invece, che dovrebbe funzionare l'app.
Vorrei avere la possibilità di rirpistinare un DB più recente modificato magari utilizzando un altro dispositivo.

Semplicemente puoi creare un cartella sotto DirInternal una nuova cartella bck
Ok alla fine credo che sceglierò questa soluzione.

Per evitare la copia del file pensavo, in occazione dell' esportazione del DB sulla Dir esterna, di aggiungere il timestamp al nome del file.
in questo modo potrei capire rapidamente qual'è quello più recente e protrei anche gestire più di un backup.

Grazie di nuovo a tutti!
 
Upvote 0

Paperinik

Member
Licensed User
Longtime User
Risolto tutto con la copia dalla cartella DirInternal.
Ora ho un'altra domanda: ho visto dagli esempi che utilizzando ContentChooser nella finestra di selezione del percorso possono essere selezionati anche i cloud (Google Drive, Dropbox, ecc), mentre con la libreria ExternalStorage vedo solo le directory del dispositivo.

C'è un modo per utilizzare i cloud anche con ExternalStorage?
 
Upvote 0
Top