- Existence et disponibilité
- Gestion des fichiers et de leur emplacement
SysRepStockageExterne (Fonction) En anglais : SysDirExternalStorage Renvoie le chemin d'un répertoire pour le stockage de fichiers dans l'espace de stockage externe d'un appareil Android.
// Enregistrement d'une photo dans le répertoire de l'application // sur l'espace de stockage externe primaire de l'application sPhoto est une chaîne = VidéoLanceAppli(viCaptureImage) SI sPhoto <> "" _ET_ SysEtatStockageExterne(1) = sseDisponible ALORS fCopieFichier(sPhoto, SysRepStockageExterne(1, sseAppPhoto)) FIN
Syntaxe
<Résultat> = SysRepStockageExterne(<Indice> , <Type>)
<Résultat> : Chaîne de caractères - Chemin du répertoire spécifié.
- Chaîne vide ("") en cas d'erreur.
<Indice> : Entier Indice de l'espace de stockage externe à utiliser (si l'appareil possède plusieurs espaces de stockage externe). Remarque : La fonction SysNbStockageExterne permet de connaître le nombre d'espaces de stockage externe de l'appareil. <Type> : Constante de type Entier Type de répertoire pour lequel le chemin sur l'espace de stockage externe est recherché. Ce paramètre peut correspondre à l'une des constantes suivantes : | | sseAppDocument | Répertoire des documents de l'application. | sseAppFichier | Répertoire des fichiers spécifiques à l'application. | sseAppMusique | Répertoire des fichiers musicaux de l'application. | sseAppPhoto | Répertoire des photos de l'application. | sseAppTéléchargement | Répertoire des fichiers téléchargés par l'application. | sseAppVidéo | Répertoire des vidéos de l'application. | ssePublic | Répertoire racine de l'espace de stockage externe. | ssePublicDocument | Répertoire des documents partagés. | ssePublicMusique | Répertoire des fichiers musicaux partagés. | ssePublicPhoto | Répertoire des photos partagées. | ssePublicTéléchargement | Répertoire des fichiers téléchargés partagés. | ssePublicVidéo | Répertoire des vidéos partagés. |
Remarques Existence et disponibilité - Le répertoire correspondant au chemin retourné par la fonction SysRepStockageExterne peut ne pas exister. Il convient de tester son existence avec la fonction fRepExiste et/ou de le créer avec la fonction fRepCrée.
- Avant d'accéder à un répertoire situé dans la zone de stockage externe de l'appareil, il est conseillé de tester sa disponibilité avec la fonction SysEtatStockageExterne.
Gestion des fichiers et de leur emplacement - Les fichiers de l'application qui ne doivent pas être partagés avec d'autres applications doivent être stockés dans le répertoire de l'application sur l'espace de stockage interne de l'application. Le chemin des différents sous-répertoires peut être connu avec les fonctions fRepEnCours, fRepExe, fRepDonnées et fRepCache.
- Lors de la désinstallation de l'application, les fichiers regroupant les caractéristiques suivantes seront automatiquement supprimés par le système :
- Les fichiers situés dans le répertoire de l'application sur l'espace de stockage externe
- les fichiers correspondant aux constantes sseAppFichier, sseAppMusique, sseAppVidéo, sseAppPhoto, seeAppTéléchargement et sseAppDocument.
- Les fichiers partagés de l'espace de stockage externe correspondant aux constantes ssePublic, ssePublicVidéo, ssePublicMusique , ssePublicPhoto, ssePublicDocument et ssePublicTéléchargement sont périodiquement scannés par le système pour être répertoriés. Les photos par exemple seront ensuite affichées dans les albums de l'appareil. Ces fichiers ne seront pas supprimés en cas de désinstallation de l'application.
- Les fichiers présents sur l'espace de stockage externe sont accessibles en lecture et en écriture par toutes les applications.
A partir d'Android 4.4 (KitKat), si l'espace de stockage externe correspond à de la mémoire amovible (SDCard), les applications peuvent créer, modifier ou supprimer des fichiers uniquement dans leur propre répertoire (répertoires correspondant aux constantes sseAppXXX). Les autres fichiers présents dans l'espace de stockage externe sont accessibles en lecture uniquement. - A partir de Android 10, une application doit uniquement accéder aux fichiers présents dans des répertoires de l'application. L'accès à des fichiers situés en dehors de ces répertoires (en lecture ou en écriture) pourront échouer. Il est recommandé de ne pas utiliser les constantes du type ssePublicxxx pour éviter tout problème.
Remarque : Pour les applications Android utilisées sous Android 10 et générées avec WINDEV Mobile, le fonctionnement est inchangé (si vous utilisez le correctif 118661 ou la version 250Update 4 de WINDEV Mobile). - Lorsque l'application est exécutée sous Android 11, de nouvelles restrictions apparaissent :
- une application ne peut plus lire ou écrire de fichiers sur le stockage externe en dehors :
- des répertoires publics "Documents", "Download", "Images", etc. : utilisation de la fonction SysRepStockageExterne avec les constantes ssePublicXXX.
- des répertoires propres à l'application : utilisation de la fonction SysRepStockageExterne avec les constantes sseAppXXX.
- dans les répertoires publics, une application peut accéder (en lecture ou en écriture) uniquement aux fichiers qu'elle a elle-même créés.
Remarque : si l'application est désinstallée puis réinstallée, elle n'aura plus accès aux fichiers créés par la précédente installation dans les répertoires publics du stockage externe.
Composante : wd280android.jar
|
|
|
|