Voici un exemple.
Le programme ci-joint fonctionne sur mon téléphone avec Android 12, je n'en ai pas un plus récent.
J'espèes que ça fonctionne toujours sur les version plus récentes.
SafeDir sur mon téléphone: /storage/emulated/0/Android/data/b4a.SafeDirExternalDemo/files
SafeDirTextes: /storage/emulated/0/Android/data/b4a.SafeDirExternalDemo/files/Textes
Avec l'explorateur de fichiers du PC, connecté via USB, le répertoire se trouve sous Stockage interne\Android\data\b4a.SafeDirExternalDemo
Avec l'explorateur de fichiers du téléphone le répertoire n'est pas visible.
Sub Process_Globals
Private xui As XUI
Private RP As RuntimePermissions
Private SafeDir, SafeDirTextes As String
Private Fichier As String
End Sub
Sub Activity_Create(FirstTime As Boolean)
Activity.LoadLayout("Layout")
SafeDir = RP.GetSafeDirDefaultExternal("") ' définit le répertoire
File.MakeDir(SafeDir, "Textes") ' ajoute un sous-répertoire
SafeDirTextes = SafeDir & "/" & "Textes"
Log(SafeDir)
Log(SafeDirTextes)
Fichier = "test.txt"
File.Copy(File.DirAssets, Fichier, SafeDir, Fichier)
File.Copy(File.DirAssets, Fichier, SafeDirTextes, Fichier)
End Sub
Sub Button1_Click
Private txt As String
txt = File.ReadString(SafeDirTextes, Fichier)
Log(txt)
End Sub