iOS Video Upload not working

To upload a video file the user has selected via the expo MediaLibrary.getAssetsAsync().

This works fine for all images and for videos on Android… but not iOS videos.

Steps to reproduce:
Fetch a video file via MediaLibrary.getAssetsAsync(), post this file to a server from iOS device (any).

Two other posts have mentioned the same issue but were closed due to no response:

I am using axios but another post tried fetch as well, in my case I post to a pre-signed AWS S3 URL, I don’t think it is the AWS bucket e.g. content type or file size limit.
The app is a bare workflow with expo version 39.

Error message:
No suitable URL request handler found for assets-library://asset/asset.MOV?id=A624DB04-2003-4B85-B646-F7809563D9AA&ext=MOV

Please can anyone help?


It looks like I should be using the localUri instead of the uri.

This can be found via MediaLibrary.getAssetInfoAsync()

I’m not sure why this is needed or what the difference is, if someone could explain?

Using localUri my issue is resolved, and quicktime files can be uploaded.

1 Like