[Unhandled promise rejection: Error: DocumentPicker requires the iCloud entitlement. If you are using ExpoKit, you need to add this capability to your App Id. See https://docs.expo.io/versions/latest/expokit/advanced-expokit-topics#using-documentpicker for more info.]
I haven’t yet tried building the app to see if it works in the completed one, but I would expect it to work in the expo client, no?
It is my understanding iOS 13 requires the iCloud entitlement whereas iOS 12 did not. My testing confirms this.
What is not clear is if this applies to the Expo client in addition to standalone and ExpoKit projects.
Given that it does not work in the Expo client on iOS 13 I take it this requirement applies to the Expo client as well, though there is no mention of it in the Expo docs:
On iOS, for standalone apps and ExpoKit projects, the DocumentPicker module requires the iCloud entitlement to work properly. You need to set the usesIcloudStorage key to true in your app.json file as specified here.
In addition, you’ll also need to enable the iCloud Application Service in your App identifier. This can be done in the detail of your App ID in the Apple developer interface.
Enable iCloud service with CloudKit support, create one iCloud Container, and name it iCloud.<your_bundle_identifier> .
Does this mean we must enroll in the Apple Developer Program to test the DocumentPicker in the Expo client on iOS 13?
I assume like me, many others are using the Expo client to develop before building a standalone app. I was hoping to delay enrollment in the Apple Developer Program until my app is feature complete but if this is a hurdle I must jump I wish it were stated so explicitly in the Expo docs.
In the end I just needed to use the latest DocumentPicker package, and it works fine.
I did also have to set up the iCloud service entitlement in itunesconnect for the live app