Configure the Native iOS SDK
The BFG SDK config file bfg_config.json
provides the basic settings that will be used during the launch of your game. In addition, it enables optional features within your game and configures settings that are specific to the BFG SDK.
The config file bfg_config.json
must be located somewhere in the application bundle.
The config file bfg_config.json
is required for the BFG SDK to function. If the BFG SDK cannot find the file, then your game will crash on startup.
JSON Structure
The config file bfg_config.json
is a JSON file broken down into sections based on their configuration area:
Section Name | Required / Optional | Description |
---|---|---|
core | Required | Settings that identify, set up and configure the game |
rave | Required | Settings that configure identity and authentication using Rave |
tacklebox_marketing | Optional | Settings used to integrate our TackleBox marketing platform NOTE: Please use this for backwards compatibility only. Newer apps should use Leanplum and/or brainCloud for Marketing functionality. |
user_authentication | Optional | Settings for optional features related to user authentication |
appsflyer | Optional | Settings for AppsFlyer install attribution |
gdpr | Optional | Settings for testing GDPR and other policies |
zendesk | Optional | Settings to configure the Zendesk help center |
debugging | Optional | Settings that enable various SDK debug features |
time_stamp | Optional | Settings for customizing the time stamp URL |
Required Sections
These sections must be included in the config file of every game using the BFG SDK, otherwise, it will crash upon initialization.
Core
The Core section contains settings that are integral to your game, such as the app name and the platforms the game will be distributed on. The values will differ based on platform (Android vs iOS):
"core": {
"app_name": "...",
"app_store": "..."
},
Value Name | Required / Optional | Description |
---|---|---|
app_name | Required | The English human readable name for your game, such as "Gummy Drop!" or "Fairway Solitaire". The app_name is used for reporting in Big Fish data analytics and user acquisition. Confirm with your Big Fish producer what to use for your app name.NOTE: In order to identify your game consistently, all non-alphanumeric characters must be removed from the app name. This means that you must remove all non-alphanumeric characters from the name in your game code. |
app_store_id | Required | The identifier given to your game in Apple's App Store Connect portal. Confirm your app_store_id with your Big Fish producer. |
custom_events_enabled | Optional | A Boolean flag that enables/disables custom event reporting. This value defaults to true if not specified. Check with your Big Fish producer before setting this value to false . |
hbi | iOS | A identifier that stands for Hashed Bundle Identifier. This value is used as an anti-fraud measure. The BFG SDK checks to verify the bundle ID is correct when the purchase service is initialized and will also verify the bundle ID and product ID found in receipts. If your game does not enable In-App Purchasing, this value is optional and defaults to nil if not specified.NOTE: The hbi value is required for In-App Purchasing. If your app supports In-App Purchasing, ensure that this value is specified in your config file. Confirm your hbi with your Big Fish producer. |
Rave
The Rave section is passed directly to the Rave SDK as part of the BFG SDK initialization. It has several different configuration values, but the ApplicationID
is the only one that is required. Confirm your ApplicationID
with your Big Fish producer.
"rave": {
"RaveSettings.General.ApplicationID": "..."
},
A full list of Rave configuration values is available on Rave’s documentation: Available Settings