I am not sure I understand what you mean.
The mp3 files are stored in the folder
file:///storage/emulated/0/Music and this is where I pick the files.
Is it really that hard to understand what I meant?
Where / when was the sound / music recorded and saved in this folder? So where does the source of the MP3 file come from?
How - in what way?
Post your blocks ...
Can we see your Blocks Preben? Right-mouse in the Blocks work area and select "Download Blocks as image"
Can I put Anke's question another way? How do the mp3 files get to be in the folder you have mentioned?
The music is mostly my own. Recorded and put in the folder a year ago and is still playable in the versions I didn't update. However, if I build a working version (without making any changes) it will not play any music.
There are MANY blocks, so it would be better if I could only show you the relevant blocks, but I don't know which blocks are relevant.
Ok, then it should work.
We only need to see the blocks where you
- set the
Player.Source
, - ask for permission,
- start the Player
- and maybe the error (if there is one?).
This is all you need (and this are the relevant blocks):
Change the sound name to one of your (existing) file names.
Because on Android < 10 READ_EXTERNAL_STORAGE
permission is requested automatically, but no longer on Android ≥ 10. (I think this is a bug).
So you must ask for this permission manually for Android 10+ devices, as I've shown in my blocks.
If AI2 targets Android 11 (Aug 2021), it will no longer be possible to save to this directory via the app. But of course you can still access files from this directory (or any other dir in the external storage), read files, play music and list files from this directory. In this respect, READ_EXTERNAL_STORAGE
should actually still be requested automatically also on Androd 10+.
I think @ewpatton can say something about it.
The user downloads the music files to a folder of his choice using the device's file manager.
First time the app runs the user is asked to find the folder and click on one of the files.
This establishes the folder in which the files are kept.
The playlist is saved to TinyDB.
I am sure all of this could have been made much easier and simple, but then again it has worked flawlessly for me till now
Which statement is true now? Where are the audio files downloaded from and in which directory? Or is that not part of the app?
So we don't get any further ... post all blocks and / or the aia.
And connect to Companion, make a right mouse click on this block, "Do it" and post the result:
The files are downloaded with the tablet's file manager.
In the app you choose the folder that contains the music files.
The Do it result is: The operation is list empty? cannot accept the arguments:,[pp]
Oneman5.aia (2.1 MB)
I don't understand Danish, if you are looking for help here you should use English as the language and (temporarily) set the language in the designer accordingly.
What I've noticed after a quick look is that you're using fairly old extensions (versions). As far as possible, you should update these extensions. That would at least be possible for @Taifun's TaifunFile
extension (Feb 13th, 2021: Version 13a).
https://puravidaapps.com/file.php
Note:
It would be best if you created the smallest possible test aia (with English blocks, see also here) with which the problem can be reproduced.
I really apprecite that you try to help me. I am totally lost.I translated the app to english.
The music is from the start placed in the internal Music folder.
After you find your music, it should be possible to play it when clicking "Listen".
It works in android 5.0 and 7.0, but not in Android 10.5
Oneman5_en7.aia (2.0 MB)
Set the path for the Player
component this way (full absolute path):
Full absolute path, e.g.:
file:///storage/emulated/0/Music/yourAudio.mp3
Note: This issue does not occure with the TaifunPlayer extension.
TaifunPlayer
works with both paths.
Hello Anke.
I changed the blocks as you suggested, but still not a sound Oneman5_en7 (1).aia (2.0 MB)
You have to do this in ALL places (blocks) where Player.Source
is set, example:
I really don't have the time to search 2700 blocks for you.
The full path works for Android 10 / 11 on my test devices.
Otherwise try the TaifunPlayer
. As I already said, it also works with /storage/...
Why not make life easy for yourself and create a simple test project that handles file locations and playback. Once you get that working you can apply this to your main project.....
This topic was automatically closed 7 days after the last reply. New replies are no longer allowed.