@appzung/expo-config-code-push
Version:
Config plugin to auto configure AppZung CodePush for React Native on prebuild
77 lines (58 loc) • 2.68 kB
Markdown
# @appzung/expo-config-code-push
Expo Config Plugin to auto-configure [`@appzung/react-native-code-push`](https://github.com/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](https://docs.expo.io/workflow/customizing/).
1. Install the package with yarn, npm, or [`npx expo install`](https://docs.expo.io/workflow/expo-cli/#expo-install).
```sh
npx expo install @appzung/react-native-code-push @appzung/expo-config-code-push
```
2. Add the [config plugin](https://docs.expo.io/guides/config-plugins/) to the [`plugins`](https://docs.expo.io/versions/latest/config/app/#plugins) array of your `app.json` or `app.config.js`:
```json
{
"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"
}
}
]
]
}
```
3. Replace `YOUR_ANDROID_PUBLIC_ID` and `YOUR_IOS_PUBLIC_ID` with your public IDs (`$ appzung release-channels list`).
4. Either replace `YOUR_SIGNING_KEY` with your [Code Signing](https://github.com/AppZung/react-native-code-push/blob/main/docs/code-signing.md) key, or remove the `CodePushSigningPublicKey` fields.
5. (optional) If your app doesn't target iOS >= 15.5, add the compatible `deploymentTarget` with [expo-build-properties](https://docs.expo.dev/versions/latest/sdk/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 [support@appzung.com](mailto:support@appzung.com).
```sh
npx expo install expo-build-properties
```
```json
{
"plugins": [
"...other plugins",
[
"expo-build-properties",
{
"ios": {
"deploymentTarget": "15.5"
}
}
]
]
}
```
6. Rebuild your app as described in the ["Adding custom native code"](https://docs.expo.io/workflow/customizing/) guide.
7. Use AppZung CodePush in your JS code, follow the [docs](https://github.com/AppZung/react-native-code-push#usage).