So now the latest version of our apps built with SAB 12.5 are able to find .webm audio files elsewhere on the device (and not just in the private app directory) with the addition of the READ_MEDIA_VIDEO permission. Thank you @richard! See the discussion here: New version of app can't find audio - #5 by jeff_heath.
One of the new features in SAB 12.5 is the Download Manager. It gets added in by default if you update from a previous version, so I left it in to see what it is like. I can see that it would be helpful for apps where the audio is downloaded from the Internet. (You can choose entire books to download at a time.)
But the normal use case here in Chad is that the entire audio folder (1189 chapters for the Chadian Arabic Bible) is copied onto the device at one time, from a computer or through a sharing app like Xender. On my Android, I have the audio folder on my SD card. With the addition of the video permission mentioned above, the app finds and plays those audio files just fine.
The problem is that the Download Manager only seems to be looking at audio files in the private app directory. So when I open it, it says that I don’t have any audio files:
But I can play Gen 1 just fine, and then if I come back afterwards to the Manager, it says that I have Gen 1 downloaded (even though I didn’t just download it):
I can check the box next to Gen 2 and tell it to download it, which it appears to do, but then I can’t find where that second copy of the audio file is. Did it actually see that the audio file was already available (on my SD card) and actually not download it, and just marked it as downloaded like it did for Gen 1?
I’m not helped by the fact that when I use the “My Files” app, and I list the video files (including my .webm “audio” files), it doesn’t appear to show .webm files that are found in the private app folders, like my \Android\data\org.ipsapps.chad.shu.bible.latn\
folder. For example, I found an audio file B01___05_Matthew_____SHUBSCN1DA.webm
in the cache
folder under that folder above. I assume that was downloaded when I was testing versions of the app that didn’t have the video permission, so it downloaded the audio file for me.
But it appears (unless I’m not looking in the right places), that the Download Manager doesn’t “find” the extra audio files (like on my SD card) until I actually play the audio in a chapter, and then it marks it as downloaded. And if I specifically try to use it to download a chapter, it appears to download it, but then sees that the audio file is already there, and just marks it as downloaded. If I tell it to download all chapters in Genesis, it takes about the right amount of time to download each chapter, but then I don’t see those .webm files anywhere, so I think it actually downloads each audio file, then notices that the file is already on the SD card and throws the new copy away. Not very efficient! It doesn’t seem to change anything in the Android\data\
folder when it finds that the audio file already exists.
So I think it would be a lot more helpful if it could do a scan and mark all of the audio files as downloaded from the start, maybe right when you open the Download Manager, or the first time that you try to play an audio file.