Hi,
There's a lot of posts about problems understanding the paths for files in DS
So I want to put some notes here, probably get corrected, and possibly add to the wiki.
Probably the simplest path is Relative (it doesn't start with /) and refers to files in your app, folders in your app (usually Img, Snd, Misc, HTML) and the files in those folders.
Next are paths supplied by DS Methods that you can write to and read.
The most useful are probably
app.GetPrivateFolder(...) - User can't see folder/files
app.GetSpecialFolder(...) - User can see files
More complicated is if you specify an absolute path (starts with /)
First, paths are automatically mapped from what you specify in DS to the underlying Android system.
Second, the mapping is different for when you are running in an IDE (DS app Home page, DS app edit page, or WiFi IDE) versus running from an installed APK/AAB.
Third, the mapping is different for Android 9 (and lower) compared to Android 10 (and higher).
Also Android 10 (and higher) scoped storage can restrict the folders you can read/write.
A good way to see how your absolute path is being mapped (and check if scoped storage is restricting it) is to write a small app to write a file with a distinctive name then find it with your Files app. (Scoped Storage may restrict the folders that your Files app can see,
so I use X-Plore a free app from the Google Play Store.)
If you want to use the external SD card then see Sample (touch Rocket in top-right of DS)
Sdcard acess- writing files to the external sd card
Some "external" functions (notably nodejs packages)
need "short paths" to be converted to "long paths" using app.RealPath(...)