iOS and watchOS native integration

Integrating Appfigurate Library into an iOS and watchOS native apps and app extensions.

iOS and watchOS native apps and app extensions can be developed in both Swift and Objective-C.

Independent watchOS native apps are not supported, watchOS native apps must be bundled inside a companion iOS app. (The companion iOS app's Appfigurate Library is used to proxy any configuration payloads applied to the watchOS native app).

For Mobile Flutter apps, jump to Mobile Flutter integration instead.

Prerequisites

You must have the following:

  • Xcode 15.2+

  • iOS (and optionally watchOS) SDKs and associated Simulators.

  • AppfigurateSE macOS app.

  • Appfigurate Simulator app installed into one or more iOS Simulators (use the AppfigurateSE macOS app for easy 1 click installation).

  • Your iOS app must target iOS 13.0+ in order to link Appfigurate Library.

  • Your watchOS app must target watchOS 5.0+ in order to link Appfigurate Library.

Integration methods

Choose one of the following integration methods (all of which are compatible with both Swift and Objective-C):

Manual integration

Clone the github repo:

git clone 
https://github.com/electricbolt/appfiguratesdk.git

Drag and drop AppfigurateLibrary.xcframework into your project.

Now jump to Add new app into Appfigurate Simulator.

Cocoapods integration

Note: Ensure you are running Cocoapods 1.9.0 or later (to provide support for distribution of XCFrameworks).

Add the following to your apps Podfile:

pod 'AppfigurateLibrary'

Run either the pod install or pod update from the terminal to download and build the AppfigurateLibrary pod.

Now jump to Add new app into Appfigurate Simulator.

Carthage integration

Add the following to your apps Cartfile:

github "electricbolt/appfiguratesdk"

Run the carthage update from the terminal to download the appfiguratesdk repository into your apps Carthage/Checkouts directory.

Note: Carthage will output the following error:

*** Skipped building appfiguratesdk due to the error:
Dependency "appfiguratesdk" has no shared framework schemes

If you believe this to be an error, please file an issue with the maintainers at https://github.com/electricbolt/appfiguratesdk/issues/new

You can ignore this error as we will be using the Carthage/Checkouts directory (instead of Carthage/Build).

Drag and drop AppfigurateLibrary.xcframework from the Carthage/Checkouts/ directory into your project.

Now jump to Add new app into Appfigurate Simulator.

Swift Package Manager integration

Add a package dependency File ‣ Swift Packages ‣ Add Package Dependency with the URL https://github.com/electricbolt/appfiguratesdk

Now jump to Add new app into Appfigurate Simulator.

Add new app into Appfigurate Simulator

Note: Replace any references to quickstart with your own apps target name.

Run Appfigurate in the iOS Simulator.

Tap Add app.

Select app type iOS.

Enter the URL scheme quickstart that will be used by Appfigurate to launch your app in order to read or apply configuration. The URL scheme must be 4-64 ascii characters in length and must be unique to your app.

Tap Add app.

Now jump to either Swift or Objective-C.

Last updated