Skip to content

Expo config plugin to auto configure AppZung CodePush for React Native on prebuild

License

Notifications You must be signed in to change notification settings

AppZung/expo-config-code-push

Repository files navigation

@appzung/expo-config-code-push

Expo Config Plugin to auto-configure @appzung/react-native-code-push when the native code is generated (npx expo prebuild).

Versioning

Ensure you use versions that work together!

expo @appzung/react-native-code-push @appzung/expo-config-code-push
52.0.0 10+ 1.0.0

Expo installation

This package cannot be used in the "Expo Go" app because it requires custom native code.

  1. Install the package with yarn, npm, or npx expo install.
npx expo install @appzung/react-native-code-push @appzung/expo-config-code-push
  1. Add the config plugin to the plugins array of your app.json or app.config.js:
{
  "plugins": [
    "...other plugins",
    [
      "@appzung/expo-config-code-push",
      {
        "ios": {
          "CodePushReleaseChannelPublicId": "YOUR_IOS_PUBLIC_ID",
          "CodePushSigningPublicKey": "YOUR_SIGNING_KEY"
        },
        "android": {
          "CodePushReleaseChannelPublicId": "YOUR_ANDROID_PUBLIC_ID",
          "CodePushSigningPublicKey": "YOUR_SIGNING_KEY"
        }
      }
    ]
  ]
}
  1. Replace YOUR_ANDROID_PUBLIC_ID and YOUR_IOS_PUBLIC_ID with your public IDs ($ appzung release-channels list).

  2. Either replace YOUR_SIGNING_KEY with your Code Signing key, or remove the CodePushSigningPublicKey fields.

  3. (optional) If your app doesn't target iOS >= 15.5, add the compatible deploymentTarget with expo-build-properties

Note that bare React Native apps can use our module with iOS < 15.5. If you need this for your expo app, please contact us at [email protected].

npx expo install expo-build-properties
{
  "plugins": [
    "...other plugins",
    [
      "expo-build-properties",
      {
        "ios": {
          "deploymentTarget": "15.5"
        }
      }
    ]
  ]
}
  1. Rebuild your app as described in the "Adding custom native code" guide.

  2. Use AppZung CodePush in your JS code, follow the docs.