Skip to content

Latest commit

 

History

History
220 lines (128 loc) · 10.1 KB

ios-app-white-labelling.md

File metadata and controls

220 lines (128 loc) · 10.1 KB

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.

{% hint style="info" %} 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. {% endhint %}

  • 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.
  • Visit the Resources Identifier List.
  • 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

  • Visit the Resources Identifier List.
  • 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

  • Visit the Resources Identifier List.
  • Click on the first identifier you created
  • On “Push Notifications”, click “Configure”

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.