White Label App

Objective: Configure the Axon iOS source to feature a study from an organization with appropriate branding. Once configured, the source will be ready to be archived and submitted to the App Store for approval.

This walkthrough should take approx. 30 minutes (depending on whether you have your organization's branding assets handy)

Below is a checklist of information and images that you should have prior to beginning this process.

App Submission Checklist

What is it

How is it presented

Comments

Principal Color

HEX string

Secondary Color

HEX string

Tutorial Page 1 copy (optional)

String (about 150 chars)

Tutorial Page 2 copy (optional)

String (about 150 chars)

Tutorial Page 3 copy (optional)

String (about 150 chars)

Tutorial Page 1 image (optional) - Required if corresponding Tutorial page exists

iPhone Screenshot 750x1334 px

Tutorial Page 2 image (optional) - Required if corresponding Tutorial page exists

iPhone Screenshot 750x1334 px

Tutorial Page 3 image (optional) - Required if corresponding Tutorial page exists

iPhone Screenshot 750x1334 px

App Icon

Follow iOS guidelines

Research Organization Logo Color

Vector or High Res Image

To be used on white background

Research Organization Logo White

Vector or High Res Image

To be used on secondary / primary colors

Study Logo Color

Vector or High Res Image

To be used on white background

Study Logo White

Vector or High Res Image

To be used on secondary / primary colors

Executable Name AKA Bundle ID

Short String

As it should appear on the phone home screen

Request the Template Project

The best way to get started is to request the template Flask app that's been formatted for white label purposes. Contact[email protected] for access to the white label app template source project.

Open the Axon.xcworkspace file in the main folder

There are two targets: Axon and Flask

Ensure that you've selected the Flask target from the build dropdown

932

Modify Org and Keys

Next, navigate to the info.plist file and expand the Medable dictionary to reveal four values that you need to set to point the app to your org.

  1. Organization - find this by going to Settings > Organization > Name (field)
  2. BaseURL: this should match up with the environment type you're working on.
  3. ClientKey: find this by going to Cortex > Settings > Apps > API Key (column)
  4. StudyID: find this by going to your researcher portal and clicking on Axon > Studies > Click Study Name. You can take the ID from the URL. See below for more info.

You can get #1 and #2 by simply looking at the URL of your researcher portal. For example, if I login to https://app.medable.com/example to see my researcher portal, I know off the bat that my baseURL is api.medable.com and my Organization is example.

The client key (or API key) is copy pasted from the Cortex App section of my researcher portal.

1812

You're going to need your study ID. Find this by opening your study on the Researcher Portal, then pulling the id from the URL. It should be the text right after ".../study/", like below.

1054

Change App Name

Open Info.plist and set the Bundle display name to whatever text you want to display under the icon on the user's iPhone.

Set App Colors

Open UIColor+Medable.m and you'll find color variables you can set to match the colors of your organization's branding. Try setting the principal and secondary colors and see if it gives you the desired outcome. You can set other colors for even more customization.

Customize Launch Screen

Finally, if you open LaunchScreen.storyboard, you'll see the screen that gets shown immediately when a user launches the app. To the developer’s discretion, customize the launch screen to use either a gradient with the provided colors or a solid color, then overlay the client’s white logo on top. If this doesn’t work, then a white background with the color logo of the client should suffice.

Replace Template Consent Document

In Xcode, open Resources => Documents and you'll find consent.pdf. Replace this file with your own PDF, while keeping the name the same. This will ensure that your study participants see the correct consent agreement. You can also delete the file and remove the links from the storyboard to show consent.

Assets

Open Assets.xcassets and replace all the logos and flask images with your own custom images. use the study logo color and study logo white assets in the checklist above.

Entitlements

The entitlements that we should include in flask is HealthKit, Push Notifications, and Background Mode. You may want to add others, if your app needs it.

Test the App

  1. Connect to the study and smoke test the app to ensure that it works as expected
  2. Make sure to check for Axon logos and making sure the app doesn’t have any other axon assets in place.