I believe this by default in Android <10. If you look at the blocks you will see the picked image copy is deleted after conversion, therefore is this is all your app does with the imagepicker there should be nothing in that folder related to the app
I will set the delete method at the last of the ImagePicker.AfterPicking Event. At least that is what I did in my Paint app. But it leaded to deleting of some other of my app's data. So I prevented it at the first place. But thanks for helping me so far.
Your extension isn't capable of converting files into .png format but it can convert them to .webp . But I need something to convert it to .png format.
You may want to check your work, before making such sweeping statements. The extension converts successfully to all three formats (from all three formats).
(if you are using the html file I previously provided, this is hard coded to display a webp file)
I've changed the .html file.
It set the image.src to window.AppInventor.getWebViewString()
When I changed the value of the global variable to Timetable.png the file wasn't even saved and threw the error. But when I changed it to Timetable.webp the file was saved.
png file created just fine in the .Timetable directory.
You do not need to provide a full file path to the webviewstring, just the filename, because the image is in the same directory as the html file.
There is something wrong with your code, you do not start the clock anywhere, and you have the imagepicker directory hard coded, this would need to be set based upon android version.
I've fixed the clock issue, did some label debugging, and found that everything works fine before the convert method.
Could you provide an event that is raised when the conversion is successful ? That might help the situation and the concept of clock can thus be forgotten.
No.
There is a lot wrong in your blocks. Only two of them:
The File component uses (needs) a relative path. So you must replace /storage/emulated/0 with an empty string.
The path to the assets starts with double slashes (//) only if the FileScope is set to Legacy. Since you set it to Asset, you shouldn't use a double slash.
And what about this? This is also wrong and what is the purpose of it? Also, this will not work on Android 11+ once there are files created by other apps. Your app can only access these with READ permission on Android 11+, but not remove them (this would require WRITE permission and this no longer exists on Android 11+).
But, these two are not a problem, cuz, the HTML file is properly copied to the exact folder with the exact name.
The clock is to check if the File is converted and placed to the selected directory, it checks every 4 seconds if the file is in the directory. Btw, my own app will create that folder due to the ImagePicker. And as far as I've read, I can write to folders created by my own app.
Even I want to avoid the ImagePicker because : Just in case the user is using an app made in App Inventor which also has a ImagePicker, but that app doesn't delete the ImagePicker directory, then, the directory will be created by the other app and I won't be able to delete that then. So in first place, due to such complications, I wanted to use the ActivityStarter.