iosxcodereact-nativecreate-react-native-app

Submit an app created with create-react-native-app to the App Store (without XCode?)


Before, react-native 0.45, when you'd create a project, it would generate a XCode project file in the ios folder so that you can open it with XCode and use it to submit your app to the app store.

Since react-native 0.45, react native project are created with the create-react-native-app command and there is no xcode project anymore.

I read that you can "eject" to go back to the old style and get an XCode project. create-react-native-app is supposed to make everything easier, so I suppose there is a way to submit to the app store without ejecting that doesn't make the whole process much more painful than by using XCode.

To be clear: I understand that there are probably ways to submit to the app store without XCode, but aren't them much more painful? I can't believe that react-native would then consider it an improvement to not generate a XCode project anymore.

Could someone point me in the right direction?


Solution

  • Since react-native 0.45, react native project are created with the create-react-native-app command and there is no xcode project anymore.

    This is incorrect. create-react-native-app is simply one of two ways to start a React Native project. The react-native init method of starting a project is still there in the docs.

    To be clear: I understand that there are probably ways to submit to the app store without XCode, but aren't them much more painful? I can't believe that react-native would then consider it an improvement to not generate a XCode project anymore.

    You are not going to get a good answer for this as it's very much down to opinion.

    Could someone point me in the right direction?

    As a starting point for learning how to publish, I suggest looking at the create-react-native-app documentation as it gives you two options right there:

    1. Ejecting to generate the ios and android folders with which you can then publish.
    2. Using a third party service like Expo to publish for you.

    Their documentation goes a bit more into depth on the options. This is the best summary I can give as an answer without putting any of my opinions into it.