This document walks you through the process for installing the Engine SDK.
This beta version of Engine is compatible with iOS 8.0+.
|FactualEngine.h||Objective-C header file|
|libFactualEngine.a||Objective-C library file|
Once you’ve unzipped the downloaded archive, startup Xcode.
You’ll also need to add a few linked libraries:
At the current time, Engine is not compatible with bitcode.
You must make sure to configure the InfoPlist.strings values associated with requesting location permissions from your users as follows:
In order to initialize Engine, you will need to do the following:
Start Engine when your app is ready (e.g., from within didFinishLaunchingWithOptions or similar):
FactualEngine *engine = [FactualEngine sharedEngine]; [engine startWithApiKey:@"your_api_key" acceptedTosUrl:@"http://yoursite.com/your_app_tos" acceptedTosDate:[NSDate date]];
Note: In order to be initialized, Engine requires a URL representing your app’s Terms of Service, and the date that the current user accepted the Terms of Service (or the current date, as shown here).
Over-the-air configuration enables you to push changes to devices that are running in the field in real-time, to change the behavior of your app. In the production version of Engine, this will allow you to do things like push completely new circumstance definitions.
During the Engine Open Beta, there are only two parameters you can control from our online interface:
You can specify:
If you choose to have Engine pop-up a dialog, the resulting dialog would resemble the following:
As a general rule, we suggest that you only ask for permissions that make sense for your associated use cases. If your app is not able to provide any obvious value to your end users by detecting their current situation while the app is not in the foreground, you should not request the always permission.