Home | Sign in | English EN
  • Existence and availability
  • Managing files and their location
WindowsLinuxUniversal Windows 10 AppJavaReports and QueriesUser code (UMC)
WindowsLinuxPHPWEBDEV - Browser code
AndroidAndroid Widget iPhone/iPadIOS WidgetApple WatchMac CatalystUniversal Windows 10 App
Stored procedures
Returns the path of the directory that will be used to store files in the external storage space of the Android device.
On Android 11, apps can no longer access certain storage locations. For more details on accessible storage locations, see Android 11: Changes in the behavior of applications.
// Save a photo in the application directory
// on the primary external storage space of application
sPhoto is string = VideoStartApp(viPictureCapture)
IF sPhoto <> "" _AND_ SysStatusExternalStorage(i) = sseAvailable THEN
fCopyFile(sPhoto, SysDirExternalStorage(1, sseAppPhoto))
<Result> = SysDirExternalStorage(<Index> , <Type>)
<Result>: Character string
  • Path of specified directory.
  • Empty string ("") if an error occurred.
<Index>: Integer
Index of the external storage space to be used (if the device includes several external storage spaces).
Remark: SysNbExternalStorage returns the number of external storage spaces found on the device.
<Type>: Integer constant
Path of directory for which the path on the external storage is searched. This parameter can correspond to one of the following constants:
sseAppDocumentDirectory of application documents.
sseAppFileDirectory of files specific to the application.
sseAppMusicDirectory of musical files of application.
sseAppPhotoDirectory of application photos.
sseAppDownloadDirectory of files downloaded by the application.
sseAppVideoDirectory of application videos.
ssePublicRoot directory of external storage space.
ssePublicDocumentDirectory of shared documents.
ssePublicMusicDirectory of shared musical files.
ssePublicPhotoDirectory of shared photos.
ssePublicDownloadDirectory of shared downloaded files.
ssePublicVideoDirectory of shared videos.

Existence and availability

  • The directory corresponding to the path returned by SysDirExternalStorage may not exist. You must check its existence with fDirExist and/or create it with fMakeDir.
  • Before accessing a directory located in the external storage area of the device, it is recommended to check its availability with SysStatusExternalStorage.

Managing files and their location

  • The application files that must not be shared with other applications must be stored in the application directory on the internal storage space of the application. The path of the different subdirectories is returned by fCurrentDir, fExeDir, fDataDir and fCacheDir.
  • When uninstalling the application, the files that group the following characteristics will be automatically deleted by the system:
    • The files found in the application directory on the external storage space
    • the files corresponding to the sseAppFile, sseAppMusic, sseAppVideo, sseAppPhoto, seeAppDownload and sseAppDocument constants.
  • The shared files of the external storage space correspondin to the ssePublic, ssePublicVideo, ssePublicMusic , ssePublicPhoto, ssePublicDocument and ssePublicDownload constants are regularly scanned by the system to be listed. Then, the photos for example are displayed in the albums of the device. These files will not be deleted when uninstalling the application.
  • The files found on the external storage space are accessible in read/write by all the applications.
    From Android 4.4 (KitKat), if the external storage space corresponds to movable memory (SDCard), the applications can create, modify or delete files in their own directory only (directories corresponding to the sseAppXXX constants). The other files found in the external storage space are accessible in read-only.
  • From Android 10, applications must access files located in their own directories only. Any attempt to access files outside of these directories (in read or write mode) may fail. It is recommended not to use ssePublicxxx constants to avoid errors.
    Remark: Applications running on Android 10 and generated with WINDEV Mobile will run as usual (if you use patch 118661 or 250Update 4 of WINDEV Mobile).
  • When the application is used on a device that runs Android 11, new restrictions appear:
    • applications can no longer read or write files to the external storage outside of:
    • in public directories, an application can only access (in read or write mode) the files that it has created.
      Remark: if the application is uninstalled and then reinstalled, it will no longer have access to files created by the version previously installed in the public directories of the external storage.
Component: wd270android.jar
Minimum version required
  • Version 21
Click [Add] to post a comment