In Android it works fine, but in iOS I found issues when reading the asset Uri of the selected files with readAsStringAsync() of expo-file-system
If the app has full media library permissions, I get an error: "File ph://... is not readable". Since the expo-file-system docs suggest that ph// is not supported with readAsStringAsync, I tried to convert it to file:// with (await MediaLibrary.getAssetInfoAsync(assets[i])).localUri but I get the same error.
If the app has partial media library permissions to user-selected pictures, then I get an error that it does not have MEDIA_LIBRARY permission.
As a workaround I copy the ph:// URI to the app's private cache folder using copyAsync of expo-file-system. Then I can read the file from there.
Why readAsStringAsync fails and copyAsync works? I don't know
In Android it works fine, but in iOS I found issues when reading the asset Uri of the selected files with readAsStringAsync() of expo-file-system
(await MediaLibrary.getAssetInfoAsync(assets[i])).localUri
but I get the same error.As a workaround I copy the ph:// URI to the app's private cache folder using copyAsync of expo-file-system. Then I can read the file from there.
Why readAsStringAsync fails and copyAsync works? I don't know