Skip to main content

Everything you need to learn Optimizely X in one place: See our resource pages for Web Experimentation and Personalization.

x
Optimizely

Mobile: Frequently Asked Questions

This article contains frequently asked questions about Optimizely's iOS SDK and testing native apps on mobile devices. To find an answer to the question you are looking for, you can click on the following links:

 

What features are included in Optimizely's iOS SDK?

Optimizely's Web and iOS experiments leverage the same interface, CDN, backend, results and reporting. They share many of the same business problems, and we want to make it possible to solve them in one unified place.
 
Optimizely's for iOS includes the following features:
Create Variations:
  • Code-free visual changes
  • Live variables
  • Code blocks
  • Staged feature rollouts
Goal Tracking:
  • Unlimited goals
  • Taps: Tracks whether a certain view is tapped
  • Views: Tracks whether a certain view appears
  • Revenue: Tracks revenue from purchases or events. For more information on setting up a revenue guide check out our revenue goal guide
  • Custom goal: For more information on setting up a custom goal, check out our custom goals guide

WHAT FEATURES ARE INCLUDED IN OPTIMIZELY'S ANDROID SDK?

Optimizely's Web and Android experiments leverage the same interface, CDN, backend, results and reporting. They share many of the same business problems, and we want to make it possible to solve them in one unified place.

Optimizely's for Android includes the following features:

Create Variations:

  • Code-free visual changes
  • Live variables
  • Code blocks
  • Staged feature rollouts

Goal Tracking:

  • Unlimited goals
  • Custom goal: For more information on setting up a custom goal, check out our custom goals guide
  • Taps, views, revenue (coming soon)

How does Optimizely work on Mobile?

A mobile app owner installs a SDK (software development kit) inside their app.

You will then log into Optimizely's web application and can immediately create experiments that modify the app's experience without writing any new code.

Once the app with the Optimizely SDK is submitted to the App Store, you can run experiments and collect data (and even create new experiments) without re-submitting to the App Store.

For more advanced experiments that change application variables or introduce new features, the developer can prepare those in advance, submit to the App Store, and use Optimizely to control and evaluate the experimental variables and features once the app is live.

What version of iOS is supported by the Optimizely iOS SDK?

Optimizely currently supports apps that are built for Apple iOS 7.0 and higher - including iOS 8.0!

What version of Android is supported by the Android SDK?

Optimizely currently supports apps that are built for Android AP 14 (Ice Cream Sandwich) and above.

Does Optimizely have Swift support?

Optimizely supports Visual Changes and Live Variables, but some custom configuration is required by your developer for this to work as expected. For more details, you can refer to this community post.

Do I have to know how to code to create Mobile experiments?

There are three types of changes you can make in Optimizely, two of which require no coding once the SDK is installed. You can make visual changes in our Visual Editor, modify Live Variable values, and control Code Blocks.

Visual Editor and Live Variables

  • Do not require coding ability to configure and start experiments
  • Anyone can easily rearrange existing objects and subviews, seamlessly make text changes, and modify values of variables
  • Make on-the-fly changes to variables integrated into your app
  • Start experiments and immediately push changes to your live app without requiring App Store review

Code Blocks

  • Requires that new code/features to be tested have already been submitted to App Store and approved
  • Can perform phased roll-outs of new features for targeted group or percentage of your users directly from Optimizely
  • Optimizely acts as the switch enabling you to intelligently activate your features/code and analyze the impact the new changes have made

Do I have to use XCode to make changes to my iOS?

XCode is not a requirement when making visual changes to your app using the Optimizely mobile editor. Make sure your developer has enabled Editing without XCode as part of the SDK install steps.

Are native app tests able to leverage device hardware?

Yes! You can edit any aspect of the UI through code blocks and live variables, which means that you can run tests that include device hardware like gyroscopes, GPS, and more.

I have an app that supports both phone and tablet - how does that work with Optimizely?

Optimizely allows you to target experiments by device type. For universal apps, we recommend setting up one experiment that targets the tablet and a separate experiment that targets the phone.

How many experiments can I run at the same time?

You can run any number of experiments at one time. However, it is important that only one active experiment make a modification to the same view (e.g. copy or an image) or live variable at any given time.

Does a visitor need an internet connection to be part of an experiment?

There are two times when the visitor will need an internet connection:

  1. When they download the initial variation
  2. When returning reporting data

If the app is offline, we will use the cached version of the config file. If there is no config file loaded, the original app will run for the visitor, and they will not be included in experiment data. For event tracking, we store events on the device until the device is connected to the network again.

How will the Optimizely SDK affect my app’s responsiveness?

The Optimizely iOS SDK should have a minimal impact on your app’s performance.

  • The Optimizely iOS SDK has a relatively small footprint in your app 1-2MB.
  • The Optimizely iOS SDK downloads a config file that contains all your experiment and variation information the first time a user runs the app with the SDK and every 2 minutes thereafter. The SDK will only delay launch by a max of 2 seconds the first time you run the app
  • Following the first time the user uses your app with the SDK for the first time, the Optimizely iOS SDK pre-caches experiment configurations locally, so the experiment is executed immediately without needing to ping an external server.
  • Other network calls will be made every two minutes. To learn more about calls made by the SDK, you can refer to here.

Can Optimizely track app downloads from my mobile website?

Optimizely can track taps, views, and custom event goals on your site, but not any activity that takes place in the App Store (like downloads). The reason for this is that Optimizely's SDK is not implemented on the Apple Store. For more information on tracking downloads, please see our mobile marketing source attribution article.

How do I deactivate or uninstall Optimizely?

You can deactivate Optimizely from running on your live apps and revert back to the original experience simply by pausing your experiments in Optimizely. If you want to uninstall Optimizely entirely, complete uninstall instructions are available here.