PC SOFT

GRUPOS DE DISCUSSÃO PROFISSIONAL
WINDEVWEBDEV e WINDEV Mobile

Inicio → WINDEV Mobile 2024 → Sujet récurrent : accès à la carte SD
Sujet récurrent : accès à la carte SD
Iniciado por Pucpood, out., 03 2023 4:50 PM - 7 respostas
Membro registado
328 mensagems
Publicado em outubro, 03 2023 - 4:50 PM
Bonjour à tous,
Une fois réglés tous les problèmes pour accéder à la carte SD avec Android 13 ... ça ne passe plus sous Android 8 !
Sur mon appareil, la carte SD est le stockage n°2 (du point de vue de Windev en tout cas).
gSelectedStorage = SysRepStockageExterne(2,ssePublicDocument)+[fSep()]+"Monprojet_APP"
SI gSelectedStorage <> "" ALORS
Info(gSelectedStorage) // permet de voir que c'est bien la carte SD
SI fRepCrée(gSelectedStorage) ALORS // c'est à partir de là que ça part en vrille en Android 8
SI (fRepEnCours(gSelectedStorage) <> -1) ALORS
SAI_REPENCOURS = fRepEnCours()
//CHK_EXTAMO = SysStockageExterneAmovible(COB_CHOIXSTKAGE)
SINON
TitreSuivant("Placement dans le dossier")
SAI_REPENCOURS = ""
Erreur (ErreurInfo(errMessageSystème))
FIN
SINON
// sous Android 8 j'arrive ICI
TitreSuivant("Création de dossier")
Erreur (ErreurInfo(errComplet))
FIN
SINON
SAI_REPENCOURS = "stockage non trouvé"
FIN

Pourtant l'autorisation d'accès au stockage externe est bien là.
Des idées ?
Membro registado
124 mensagems
Publicado em outubro, 03 2023 - 5:36 PM
Bonjour,

1) Dans un premier temps, as-tu testé la disponibilité de ta carte SD avec SysEtatStockageExterne(2)
Si tu peux écrire, la fonction devrait retourner sseDisponible

2) Personnellement, sur Android 8 et 13 j'écris dans SysRepStockageExterne(1,sseAppTéléchargement) sans aucun problème
(Je n'ai pas essayé avec les autres constantes ssePublicXXX)

Fabrice
Membro registado
328 mensagems
Publicado em outubro, 04 2023 - 9:43 AM
Bonjour,
Merci de ton attention.
SysEtatStockageExterne(2) donne sseDisponible. S'agissant de la carte SD, le stockage est bien identifié comme amovible.
J'utilise volontairement ssePublicDocument pour qu'une désinstallation de l'appli ne provoque pas la perte immédiate des données qui y sont stockées. Et c'est bien là que ça coince : sur sseAppDocument par exemple, il n'y a pas de problème.
Le plus fort, c'est que le stockage externe 1 (donc celui de base de l'appareil, non amovible) tout fonctionne très bien.
Sauf que dans mon cas il faut que je puisse lire la carte SD avec une autre bécane en cas de panne du mobile.
Membro registado
124 mensagems
Publicado em outubro, 04 2023 - 10:19 AM
Bonjour,
Les fichiers (ou dossiers) de ta carte SD sont-il modifiés par une autre application entre temps ? Principalement, comme tu le précise, lorsque tu y accède avec une autre bécane en cas de panne du mobile.
Auquel cas, cela expliquerait qu'il ne peut plus y avoir de modifications par ton application mobile une fois la carte réintégrée dans l'appareil
Membro registado
328 mensagems
Publicado em outubro, 04 2023 - 11:24 AM
Non, pas du tout. Dans le cas qui me pose problème, je crée juste un dossier.
Tiens d'ailleurs, je vais essayer de juste de lister les fichiers de ssePublicTéléchargement ...
...
...
Echec ! En même temps ce n'est pas surprenant à la limite car ce qui s'y trouve ne m'appartient pas.
Pendant que j'y étais j'ai aussi essayé de simplement créer un fichier dans ce dossier, sans succès, mais un message un peu plus loquace :
"Permission denied Impossible de créer le fichier".
"Permission denied" ... à quoi sert ssePublic alors ? Et pourquoi ça fonctionne en Android 11, 12, 13 ?

J'ai ouvert un incident chez PC Soft, je donnerai des nouvelles au fur et à mesure de leurs réponses.
Membro registado
328 mensagems
Publicado em março, 04 2024 - 8:50 AM
Hello !
J'ai reçu un correctif, mais je suis déçu : ça semble fonctionner à première vue, mais lorsqu'on indique ssePublicDocuments, ça va en réalité dans sseAppDocuments. Du coup, on peut effectivement sauvegarder sur la carte SD, mais tout est perdu en cas de désinstallation.
Pfiououo ! C'est sans fin ...
Publicado em março, 05 2024 - 11:45 AM
J'ai aussi un peu de mal avec les contraintes importates liées aux versions d'android.
Il faut regarder aussi si l'autorisation est pour Tous les fichiers ou uniquement les fichiers multimedia par exemple.
on a des devices en test avec cette nuance a gérer (je n'ai plus les n° de relase android exacte mais si cela peut être une piste...)
Membro registado
328 mensagems
Publicado em março, 12 2024 - 8:19 AM
Salut !
Voici la réponse de PC Soft suite à relance :

"L'étude de cet incident par l'équipe développement a été effectuée.
Voici leurs conclusions :

La correction était en effet incorrect et nous sommes donc revenus en arrière.
En effet, le système n'autorise tout simplement pas à accéder en écriture aux répertoires public sur les stockages externes secondaires. Seules les application système ont ce droit.

Cet incident est donc archivé."

Bref, on peut écrire sur la carte SD dans les dossiers de l'appli (j'ai vérifié), mais pas dans les dossiers publics, ce qui serait normal du coup d'après ce que je comprends ci-dessus.