Italian Creare immagine di un oggetto

Star-Dust

Expert
Licensed User
Longtime User
implementa correttamente i permessi
 

Fulvio75

Well-Known Member
Licensed User
implementa correttamente i permessi

B4X:
'Crea un immagine dell'oggetto passato in Download (Funziona solo in Activity)
Sub CreateObj_PNG(obj As B4XView,FileName As String)
    
    Dim xView As B4XView = obj
    Dim Bitmap1 As B4XBitmap = xView.Snapshot
    Dim Out As OutputStream
    Dim rp As RuntimePermissions

    rp.CheckAndRequest(rp.PERMISSION_WRITE_EXTERNAL_STORAGE)
    Wait For Activity_PermissionResult (Permission As String, Result As Boolean)
    
    If Result = True Then
        
        'se il file esiste lo cancello
        If File.Exists(File.Combine(File.DirRootExternal,"Download"),FileName & ".png") = True Then
            File.Delete(File.Combine(File.DirRootExternal,"Download"),FileName & ".png")
        End If
    
        Out = File.OpenOutput(File.Combine(File.DirRootExternal,"Download"), FileName & ".png", False)
    
        Bitmap1.WriteToStream(Out, 100, "PNG")
        Out.Close
        
    End If
    
End Sub

Funziona provato a disinstallare e reinstallare l'app e và
Grazie
 

LucaMs

Expert
Licensed User
Longtime User
Te la fù vedè mi….
Beh, non è che tu mi abbia fatto vedere come fai per farla scaricare, ma va bene, mi hai fatto vedere cosa intendessi.

Ti consiglierei di dividere la cosa in due routine, una che ottiene la bitmap e l'altra che la salva in una cartella.

Per quanto riguarda i permessi per la DirRootExternal, c'è un aggiornamento di Erel, proprio di oggi, mi pare:
 

Star-Dust

Expert
Licensed User
Longtime User
Capito nulla...
Devo inserire quella riga che ha scritto per far funzionare quanto sopra??
Solo se hai Android 10 e stai compilando con SDK 29
 

Fulvio75

Well-Known Member
Licensed User
No, ha giustamente commentato @Star-Dust quello che volevo solo aggiungere, visto che è una "novità":
Screenshot_2020-05-12-06-36-09-052_com.android.settings.jpg
 

Star-Dust

Expert
Licensed User
Longtime User
Quindi si... Altrimenti non fa più la creazione del file?
Se ti funziona non è necessario perchè ancora Android 9. Se non ti funziona allora è già Android 10.
 

LucaMs

Expert
Licensed User
Longtime User
E' Android 10, no?

1589262271244.png


Da agosto 2020 tutte le nuove app pubblicate sul market dovranno avere, come impostazione del SDKTarget 29, mentre per le vecchie app già pubblicate che si vogliano aggiornare (sempre su Google Play), sarà obbligatorio da novembre.
[fonte: Erel ?]
 
Top