android.permission.WRITE_EXTERNAL_STORAGE doesn't function anymore

Yes, because you basically have to specify the relative path when a component (like File, Canvas, etc.) saves something. The relative path:

/myFolder/aa.jpg

refers (is redirected) in Canvas for devices with API> 28 to the following absolute path:

/storage/emulated/0/Android/data/edu.mit.appinventor.aicompanion3/files/aa/aa.jpg