Thanks for the detailed response, Albert.
Our server API has a strict payload limit of 250 MB per request. Because of this constraint, our existing upload infrastructure uses chunked uploads for large files — splitting videos into smaller byte ranges and uploading each chunk separately via the BITS protocol (CreateSession →
Fragment → CloseSession).
However, I don't see any API surface in PHAssetResourceUploadJobChangeRequest to:
Specify byte ranges for partial uploads
Create multiple sequential jobs for chunks of the same resource
Provide a callback/delegate pattern for "give me the next upload destination"
Given that the system daemon handles uploads out-of-process (as you explained), it seems this API assumes the destination endpoint can accept the entire file in a single HTTP request.
My question then becomes: For services with server-side payload limits, is PHBackgroundResourceUploadExtension the wrong tool for the job? Should we instead:
Continue using our existing NSURLSession background upload approach (where we control chunking)?
Is there a roadmap consideration for chunked upload support in this API?
Any guidance from the team would be appreciated. We'd love to adopt this new API for its battery/lifecycle benefits, but the 250 MB server limit is a hard constraint we can't easily change.
Topic:
Media Technologies
SubTopic:
Photos & Camera
Tags: