ivpusic / react-native-image-crop-picker

iOS/Android image picker with support for camera, video, configurable compression, multiple images and cropping
MIT License
6.12k stars 1.56k forks source link

SDK Version 23 versus 27 #732

Open norby3 opened 6 years ago

norby3 commented 6 years ago

Version

Tell us which versions you are using:

Platform

Tell us to which platform this issue is related

Android

react-native (the parent or base) requires: compileSdkVersion 23 buildToolsVersion "23.0.1"

but react-native-image-crop-picker (the child or subsidiary) requires: compileSdkVersion 27 buildToolsVersion "27.0.3"

Is there some blog post or Stack Overflow entry that (simply) explains how to resolve these version issues?

I'm experience software engineer but new to React Native...

How can a subsidiary node (react-native-image-crop-picker) be several levels (27) ahead of the base node's (react-native) dependencies (23) ??

More simply, how can the child's requirements be ahead of the parent's??

Is some special build configuration file needed?

Was able to get iOS app to work, thou to be honest, I'm not sure how... guess cocoapods handled the complexity for me.

Am I missing something in installation instructions??

geekanant commented 6 years ago

Yes, you are right react-native requires: compileSdkVersion 23 buildToolsVersion "23.0.1" but react-native-image-crop-picker (the child or subsidiary) requires: compileSdkVersion 27 buildToolsVersion "27.0.3".

As of now, the create-react-native command will create a react-native project with default compileSDKVersion 23 and buildToolsVersion 23.0.1 which is not supported by react-native-image-crop-picker.

I resolved this conflict by using react-native init projectname instead of create-react-native-app and checked react-native version in my project folder. With react-native init, I got react-native version as 0.57 which is the latest and supports SDK 27.

Just in case, still you get react-native version 23, you can perform a react-native-git-upgrade which will automatically set it to the latest version.

Note- A react-native upgrade worked only with project created by react-native init and not create-react-native-app for me.