Skip to content

Reading 42

Avrey125 edited this page Dec 12, 2019 · 1 revision

React Native

Deployment

Android

  • Create Google Play Developer Account ($25)
  • Add app icons to your app (I typically use this tool to generate all necessary sizes)
  • Add splash screens to your app (I typically use this tool to generate all necessary sizes)
  • Update the package name of your application
  • Generate the Signed Production APK
  • Create app in the Google Play Console
  • Upload

iOS

  • Create a development account with apple (this can take some time for verification so do it early — $99/year)
  • Add app icons to your app (I typically use this tool to generate all necessary sizes)
  • Add splash screens to your app (I typically use this tool to generate all necessary sizes)
  • Create a new explicit app id on developer.apple.com (this gives you more flexibility in the future rather than using a wildcard)
  • Select your explicit app id as the bundle identifier in Xcode
  • Create development and production certificates for your app (Fastlane match can help with this)
  • Create development and production provisioning profiles for your app (Fastlane match can help with this)
  • Create app in iTunes Connect
  • Upload

Over-the-Air (OTA) An OTA update does pretty much what it says. You send an update out, the user downloads it, and the app updates — much like the web. Typically this happens behind the scenes. OTA updates are a strong point of React Native (and other technologies like Cordova). Since we, the developers, usually write our logic in JavaScript (which doesn’t have to be compiled and installed) we can just send out a new JavaScript bundle, and once the user downloads it they have the updated logic! No waiting required. App Store If you don’t want to send an update OTA or you’ve made a change that requires it (more on that later), you can update via the app store. Doing so means you use the regular tools (either iTunes Connect or Google Play Developer Console) to upload a new .ipa or .apk. When you’re doing this, you’re re-compiling the native code and re-bundling the JavaScript. You’re shipping 100% new code and you can do anything at this point. It also means you have to go through the usual review process & waiting period.

OTA Updates = CodePush CodePush is a tool developed by Microsoft to quickly and easily manage and update your production React Native JavaScript bundles. It’s easy to setup, easy to use, and it’s free. It’s seriously incredible and will make your life easy. I would suggest that, even if you never intend to send an update OTA, you still configure CodePush to have as a last chance to fix a bug that made it to production. Native Updates = Fastlane Fastlane helps automate many of the repetitive tasks that come along with building the native app. You can think of it as a tool belt and in that tool belt are a variety of tools that handle different pieces of the native development puzzle. Continuous Integration = Bitrise/CircleCI Though a category I haven’t used much, once you’re ready to invest in total automation (beyond Fastlane) Bitrise and CircleCI are both great options. They allow you to automate the build & deployment process of your native app. No more waiting for the app to build on your machine, and you take the human error element out!

Clone this wiki locally