DeployPulse

iOS Setup

Once you've installed @deploypulseio/react-native-code-push, you need to integrate it into your Xcode project. If you are using Expo managed workflow, see Expo Setup instead — no native file editing required.

Install CocoaPods dependencies

cd ios && pod install && cd ..

Patch AppDelegate

Swift (recommended)

Open AppDelegate.swift and add the import:

import CodePush

Then find and replace the bundleURL() method:

override func bundleURL() -> URL? {
#if DEBUG
  RCTBundleURLProvider.sharedSettings().jsBundleURL(forBundleRoot: "index")
#else
  CodePush.bundleURL()
#endif
}

Objective-C

Open AppDelegate.m and add the import:

#import <CodePush/CodePush.h>

Then find and replace the sourceURLForBridge method:

- (NSURL *)sourceURLForBridge:(RCTBridge *)bridge
{
#if DEBUG
  return [[RCTBundleURLProvider sharedSettings] jsBundleURLForBundleRoot:@"index"];
#else
  return [CodePush bundleURL];
#endif
}

Add keys to Info.plist

Add your deployment key and the DeployPulse server URL to Info.plist:

<key>CodePushDeploymentKey</key>
<string>YOUR_IOS_DEPLOYMENT_KEY</string>
<key>CodePushServerURL</key>
<string>https://api.deploypulse.io</string>

Retrieve your deployment key with:

dpctl deployment list <AppName>

HTTP exception domains (ATS)

The CodePush plugin makes HTTPS requests to the following domains. If you need to configure ATS exceptions, add them to Info.plist:

<key>NSAppTransportSecurity</key>
<dict>
  <key>NSExceptionDomains</key>
  <dict>
    <key>api.deploypulse.io</key>
    <dict><!-- ATS options --></dict>
  </dict>
</dict>

Domains in use: api.deploypulse.io, codepush.blob.core.windows.net, codepushupdates.azureedge.net.

Code Signing (optional)

To verify bundle integrity before applying updates, add your public key to Info.plist:

<key>CodePushPublicKey</key>
<string>-----BEGIN PUBLIC KEY-----
YOUR_PUBLIC_KEY_HERE
-----END PUBLIC KEY-----</string>

See the Code Signing guide for full setup instructions.

Next step

Return to the React Native SDK page for usage and notifyAppReady instructions.