La cartella Android/Data è accessibile.
Non sapevo che fosse la File.DirAssets
Farò qualche prova.
O, meglio, è probabile che nella Data ci siano le "DirInternal" delle nostre app ma che non siano visibili.Non lo è.
La cartella Android/Data è accessibile.
Non sapevo che fosse la File.DirAssets
Farò qualche prova.
O, meglio, è probabile che nella Data ci siano le "DirInternal" delle nostre app ma che non siano visibili.Non lo è.
Sì, è così, ma non so a cosa ti riferisciPerò nella DirAssets ci si possono mettere Files solo dall'IDE mi pare.
Poi é solo in lettura e non si possono salvare files nemmeno da codice, no?
KARMA - ovvero: calma detto alla romana-indiana.Da codice non credo ma qualunque file ci Piazzi lo vedi con un file Explorer o da PC con il collegamento al telefono
Aridaje! Posta COME hai realizzato il db, se lo hai creato a runtime o copiato dalla dirAssets ad un'altra cartella e, in ogni modo, DOVE, IN QUALE CARTELLA, lo hai messo (a runtime)Si lì modifichi tranquillamente, infatti il db può essere scritto e cancellato
Io il db lo vedo e ci scrivo pureKARMA - ovvero: calma detto alla romana-indiana.
DOVE? Di che parli? Quali file?
I file che "metti" nel tab Files dell'IDE si trovano nel PC, nella cartella Files del progetto! In fase di compilazione vengono inglobati nell'apk e NON sono accessibili dal proprietario del dispositivo, nemmeno tramite explorer di windows.
E questo, malgrado io non sia un genio, dopo 8 volte che lo hai scritto, penso di averlo capito ?.Io il db lo vedo e ci scrivo pure
Ok, tralasciamo il DB; qual'era la domanda? Dove fossero, sul dispositivo, i file che metti nel tab Files? Non li potrai vedere se non hai rootato il dispositivo.Fatto a mano con SQLite viewer e messo in quello che hai detto tu e lo vedo, quando apro l'applicazione uso dbutils per copiarlo e me lo ritrovo lì ben visibile, meglio così perché lo voglio vedere ?
Ok ottimo questo è quello che volevo sapere quindi per farlo?Ok, tralasciamo il DB; qual'era la domanda? Dove fossero, sul dispositivo, i file che metti nel tab Files? Non li potrai vedere se non hai rootato il dispositivo.
devi copiarli in una directory "pubblica", come la RootExternal.Ok ottimo questo è quello che volevo sapere quindi per farlo?
Sub Process_Globals
Private mRuntimePermissions As RuntimePermissions
End Sub
Sub Activity_Create(FirstTime As Boolean)
Dim ExtDir As String = mRuntimePermissions.GetSafeDirDefaultExternal("")
LogColor("ExtDir: " & ExtDir, Colors.Blue)
File.Copy(File.DirAssets, "MiaImmagine.png", ExtDir, "MiaImmagineCopiata.png")
End Sub
Scusa ma direxternal deve essere una Memory card oppure è una cartella qualunque che vedo con il magico Explorer?B4X:Sub Process_Globals Private mRuntimePermissions As RuntimePermissions End Sub
B4X:Sub Activity_Create(FirstTime As Boolean) Dim ExtDir As String = mRuntimePermissions.GetSafeDirDefaultExternal("") LogColor("ExtDir: " & ExtDir, Colors.Blue) File.Copy(File.DirAssets, "MiaImmagine.png", ExtDir, "MiaImmagineCopiata.png") End Sub
Sub Process_Globals
'These global variables will be declared once when the application starts.
'These variables can be accessed from all modules.
Public SQLConn As SQL
Public IsSQLConnOpen As Boolean = False
End Sub
'Apre la connessione al database
Sub Open
Dim DBInternalFolder As String ="" 'cartella interna scrivibile del telefono
'copio il file del database nella cartella interna scrivibile del telefono e restituisco il percorso dove si trova
DBInternalFolder = DBUtils.CopyDBFromAssets("DB_Shifts.db")
'inizializzo la connessione
SQLConn.Initialize(DBInternalFolder,"DB_Shifts.db",True)
IsSQLConnOpen = SQLConn.IsInitialized
End Sub
'Chiude la connessione al database
Sub Close
SQLConn.Close
End Sub