ForeSee Developer Portal

Everything you need to configure and optimize your ForeSee products. Home of developer documentation, implementation guides, and release notes.

Blueprint

Getting Started (Installation & Configuration)

Requirements

  • Minimum Deployment Target of iOS 11.0
  • Xcode 11

1. Installation

Installing with CocoaPods

  1. Add the following to your Podfile:
platform :ios, '11.0'  

pod 'ForeSee'
pod 'ForeSee/ForeSeeFeedback' # optional for Feedback

Information about the latest ForeSee SDK CocoaPod can be found its CocoaPods page.

Visit the CocoaPods website for help getting started with Podfiles.

Alpha Releases

The CocoaPods website always shows the latest version of a pod, even if it's a pre-release version (e.g. 5.0.1-alpha1). CocoaPods is smart enough to properly handle pre-release pods in the Podfile, but their website makes no distinction between pre-release and production-ready versions. Pre-release pods are not suitable for App Store submissions.

Manual Installation

If your project does not use CocoaPods, you must install the SDK manually. You can download the latest version from the following page: ForeSee iOS SDK Release Notes.

In most cases, when using the latest versions of Xcode and the ForeSee® iOS SDK, you need to add the frameworks to your project:

  1. Copy all the ForeSee*.framework files into your project.

  2. Add the frameworks to your project (Your Target -> General -> Frameworks, Libraries, and Embedded Content)

Older versions of Xcode

The previous step is split into two steps in previous version of Xcode (before Xcode 11):

2a. Include the frameworks as embedded binaries (Your Target -> General -> Embedded Binaries).

2b. Find the folder that contains the ForeSee framework files and add that folder to the target's Framework Search Paths (Your Target -> Build Settings -> Search Paths -> Framework Search Paths)

Additional steps for older versions of the SDK

Some older versions of the SDK (pre-framework) require additional setup steps.

The following steps are usually not required. These steps are presented for older versions of the ForeSee SDK (before 5.0.0).

  1. Add the images in the assets folder to your project. Please be sure to add the images as individual (or group of) files and not via the folder containing the images, as this causes problems in certain scenarios.

  2. Add the following frameworks to your project (Build Phases -> Link Binary With Libraries):

    • AVFoundation
    • CoreGraphics
    • CoreMedia
    • CoreMotion
    • CoreVideo
    • QuartzCore
    • SystemConfiguration
    • libz
    • UserNotifications
    • Foundation
  3. Add -ObjC to the OTHER_LDFLAGS setting of your project.

2. Configuration

After installation, follow these instructions to create your foresee_configuration.json file and add it to your project. Here's a minimal sample configuration to get you started:

{
    "clientId":"9NNs9GIBQIVdk1LpDlJpAQ==",
    "measures":
    [
        {
            "surveyId": "mobile_app-en",
            "launchCount": 0
        }
    ]
}

This is not a complete config. Be sure to replace the clientId in the above config with your own client ID before releasing your app. Your actual configuration will likely contain additional fields. Follow these instructions to create your foresee_configuration.json.

Configuration Tip

Some configuration options are required for proper function of the SDK. Remember to verify that important configuration items (e.g. appName and logo) are defined correctly in the foresee_configuration.json file.

3. Instrumentation

Continue to the implementation instructions for either Objective-C or Swift.

A Note on Uploading to the App Store

The object files in the ForeSee frameworks contain architectures for both simulators and real devices. App Store submissions must not contain simulator architectures. More information is available here:

https://developer.foresee.com/docs/common-problems-2#section-errors-uploading-to-the-app-store

Getting Started (Installation & Configuration)


Suggested Edits are limited on API Reference Pages

You can only suggest edits to Markdown body content, but not to the API spec.