Dunque, eccomi nuovamente a voi per una ulteriore consulenza.
Ho usato il codice fornitomi da UDG per l'aggiornamento della galleria e funziona seppure non definirei l'operazione un fulmine ma Android ha le sue logiche
.
Dim Phone As Phone
If Phone.SdkVersion <= 18 Then ' min - 4.3.1
Dim i As Intent
i.Initialize("android.intent.action.MEDIA_SCANNER_SCAN_FILE", "file:/" & stringa2)
Phone.SendBroadcastIntent(i)
Else
Dim ctxt As JavaObject
ctxt.InitializeContext
Dim MediaScannerConnection As JavaObject
MediaScannerConnection.InitializeStatic("android.media.MediaScannerConnection")
Dim interface As Object = MediaScannerConnection.CreateEventFromUI("android.media.MediaScannerConnection.OnScanCompletedListener", "ScanCompleted", Null)
MediaScannerConnection.RunMethod("scanFile", Array(ctxt, Array As String(stringa2), Array As String("image/jpeg"), interface))
End If
Il mio problema è che utilizzo un sistema di autonumerazione per generare i nomi dei file prodotti ovvero, prima di salvare, faccio una scansione del contenuto della directory per trovare il primo numero di file disponibile (es. ho già presenti i file 1.jpg, 2.jpg e 3.jpg. Faccio un loop fino a quando l'indice, che si incrementa ad ogni giro, non genera un nome che non esiste e quello è il nome del file da generare).
La rogna è che quando cancello i file presenti in galleria, il sistema non si accorge di questa rimozione per un po' di tempo e la mia app continua a vedere quei file e quindi genera nomi successivi per poi adeguarsi con calma nel tempo. Se fossi in Windows direi non si aggiorna la FAT, o quel che è oggi, se non dopo un po' di tempo.
Qualche idea?
Al solito pendo dalle vostre labbra