Links

iOS App White Labelling

General setup

  • Open RocketChatRN.xcworkspace on Xcode (13.0 or newer)
  • On the General tab, select “RocketChatRN” and change Display Name, Bundle Identifier, Version, and Build.
As explained earlier, the repo contains targets/build flavors to build our experimental and official apps. This guide covers the default one, which is the Experimental app.
  • Select “ShareRocketChatRN” and change the same properties
    • Display Name and Bundle Identifier are different from the previous target.
    • Version and Build must be the same on all targets.
  • Select “NotificationService” and change the same properties
    • Display Name and Bundle Identifier are different from the previous target.
    • Version and Build must be the same on all targets.
  • On Signing and Capabilities, check “Automatically manage signing”, select your app group, and add a keychain group.
  • Select “ShareRocketChatRN”, check “Automatically manage signing”, select your app group, and add the same keychain group.
  • Select “NotificationService”, check “Automatically manage signing”, select your app group and add the same keychain group.
  • Set the same app group on RocketChatRN/Info.plist, ShareRocketChatRN/Info.plist and NotificationService/Info.plist
  • Set the same keychain group on RocketChatRN/Info.plist, ShareRocketChatRN/Info.plist and NotificationService/Info.plist
  • It needs to be the same on all entitlements
  • Change the app icon on Experimental.xcassets/App Icon
  • Change the app splash screen on Experimental.xcassets/Launch Screen Icon
  • Change the splash background colors on Experimental.xcassets/splashBackgroundColor
  • Set your Bugsnag API key on RocketChatRN/Info.plist

Generating iOS app on Firebase

  • Visit the project overview on your Firebase Console.
  • Navigate to Settings > Project settings.
  • On “General” tab, click on “iOS” button under “Your apps” section
  • Enter your bundle ID and then “Register app
  • Download config file and move it as instructed
  • Add it to all targets

Running the app

  • Execute the following on project terminal
    • yarn
    • npx pod-install
    • yarn ios

Configuring the Apple Developer Portal

Login to Apple Developer Portal

Creating an App Identifier

  • Add description and Bundle ID
  • On Capabilities, select App Groups and Push notifications
  • Click “Continue” and then “Register”

Creating an App Identifier for our Share Extension

  • Share Extension is a version of the app that opens when you share data from another app to Rocket.Chat. For example, share a photo from the gallery.
  • Click to add Identifier.
  • Select App IDs and Continue.
  • Add a description and Bundle ID.
  • This time, select only App Groups under Capabilities
  • Click “Continue” and then “Register

Create an App Identifier for our Notification Service

Creating an App Group

  • Enter a description and an Identifier
  • Click “Continue” and then “Register”

Applying App Group

  • Click on the first identifier you created
  • On “App Groups”, click “Configure
  • Select the App Group you created and click “Continue”
  • Click “Save
  • Repeat these steps for the second identifier you created for the Share Extension and notification service.

Creating Push Notifications certificates

Development SSL Certificate

  • On “Development SSL Certificate”, click “Create Certificate”
  • Follow the official tutorial to generate a Certificate Signing Request.
  • Select the certificate you created and click “Continue”
  • Download the certificate and proceed to install it on your machine as per the on-screen instructions.
  • After installing it, “Keychain Access” should have opened automatically on your Mac.
  • Export the certificate to generate a .p12 file.
  • For simplicity, save it in the same folder of your CSR and .cer. You’ll need it later.

Production SSL Certificate

  • On “Production SSL Certificate” click “Create Certificate”
  • Follow the official tutorial to generate a Certificate Signing Request.
  • Select the certificate you created and click “Continue”
  • Download the certificate and proceed to install it on your machine as per the on-screen instructions.
  • After installing it, “Keychain Access” should have opened automatically on your mac
  • Export the certificate to generate a .p12 file
  • For simplicity, save it in the same folder of your CSR and .cer. You’ll need it later.