I just detached from Expo and got everything setup. I run the app (without any changes to detached code), and it loads fine, except when I switch to my expo-powered camera tab in my app, it crashes the app and the following Red Screen error occurs:
Error: Camera has no propType for native prop ExponentCamera.pictureSize of native type NSString *
If you haven’t changed this prop yourself, this usually means that your versions of the native code and Javascript code are out of sync. Updating both should make this error go away.
how/where do I provide a propType for ExponentCamera.pictureSize?
how do I “update both”? Does this mean updating to both the latest Expo SDK and the latest Xcode?
I am running:
Xcode 9.2
Expo SDK 26
ExpoKit iOS Tag 2.6.5
Hi @quadsurf - I’m not sure how you ended up with an ExpoKit tag of 2.6.5 If you’re on SDK 26, you should be using ExpoKit 2.4.4. Could you try changing that in your Podfile, re-run pod install and see if that fixes things?
I have tried all sorts of combinations between SDK versions 25 & 26, tags 2.4.4 to 2.6.8, and CocoaPod versions 1.0 to @latest.
SDK 26 with ExpoKit tag 2.6.5 with CocoaPod 1.4 was the only combination that Xcode was able to run a build with… it was the only combination where I was at least able to open the app on my device. All other combinations failed to build. I would prefer starting at this starting point since it was furthest progress for me in my detachment efforts.
Furthermore, from the link below, I am unable to determine which ExpoKit tags go with which SDK releases (there is no mapping chart): https://github.com/expo/expo/releases
You can determine which ExpoKit version is for which SDK version from this endpoint: https://exp.host/--/api/v2/versions . (It may be easier to read if you copy+paste into a text editor that can auto format JSON.) Find the object corresponding to the SDK version you’re using, and then the value of "iosVersion" will give you the ExpoKit version. Apologies that this isn’t better documented, I’ve opened an internal ticket to add this to our docs.
Alternatively, if the original issue you were facing with ExpoKit version 2.4.4 was the FBAudienceNetwork, you can instead fix that by modifying your Podfile.lock to depend on FBAudienceNetwork 4.28.1 instead of 4.99.1.
thank you @esamelson … I went ahead and successfully upgraded to SDK 29 (from an undetached git branch on SDK 26)… the upgrade was seamless, and the app still works perfectly throughout, but only on the Expo Client though. When I try detaching from SDK 29, the following happens: