How is your phone being accessed? With older versions of Android (and some newer, specific phones whose maintainers still implement it), the file system was accessed in mass storage mode which treated the phone's internal storage as an ordinary flash drive. This worked mostly very well, with the downside that the flash memory was unusable to running apps while your phone was mounted. Partially to mitigate this and for other reasons, Android nowadays typically wants you to use MTP. MTP is notoriously unreliable.
If you are using MTP, then don't expect much. You may wish to check to see which MTP implementation your distribution is using. If files are not showing up as you think they should, then try another implementation - you'll probably be building from source. Here is a good overview of what's out there and their (dis)advantages
https://wiki.archlinux.org/index.php/MTP I have not had many good experiences with MTP and have had similar issues. Although, now I use jmtpfs and it gets the job done; though now I have the opposite problem - some files are listed three times for no reason at all.