Summing up from the comments, and adding a little.
There's no complete documentation for the entire cards structure, that seems not to be fixed. However, some directories seem to be more or less common:
- the developers guide suggests app specific data should be stored below
<package_name> represending the name of the package the data belongs to, which looks like
/Android/data/<package_name>/cache/ for external cache files (basically, this corresponds to the
/data/data/<package_name>/ directory on internal storage)
- same source recommends a bunch of directories to store files intended to be shared among apps. All of those directories are located in the root of the card, and include:
Music/ - Media scanner classifies all media found here as user music.
Podcasts/ - Media scanner classifies all media found here as a podcast.
Ringtones/ - Media scanner classifies all media found here as a ringtone.
Alarms/ - Media scanner classifies all media found here as an alarm sound.
Notifications/ - Media scanner classifies all media found here as a notification sound.
Pictures/ - All photos (excluding those taken with the camera).
Movies/ - All movies (excluding those taken with the camcorder).
Download/ - Miscellaneous downloads.
Excluding directories from Media Scan
If you wish to exclude a directory from the media scan (i.e. from being indexed for the gallery), you can place a file named
.nomedia there. This will tell the media scanner to skip this directory (including all files and subdirectories) from a scan -- thus neither images, nor audio or video files stored here will turn up in the gallery. You however can still access them by looking them up manually. Up to my knowledge, there's no way to restrict this to a certain media type (i.e. having the media scanner index audio/video, but skip images). Important: Note the "dot" at the beginning of the file name (making it a "hidden file"). This must be included with its name.