This article contains the information required to update the Airbridge Unreal SDK. We recommend checking the information regarding all versions.
Check the information below when updating the Airbridge Unreal SDK to v4.0.
Airbridge Settings (v1) | Airbridge Settings (v4) | Change |
|---|---|---|
App Name | App Name | - |
App Token | App Token | - |
Log Level | Log Level | - |
iOS URI Scheme | iOS URI Scheme | - |
Android URI Scheme | Android URI Scheme | - |
Custom Domain | Custom Domain | Multiple inputs are now supported. |
Session Timeout Seconds | Session Timeout Seconds | - |
User Info Hash Enabled | User Info Hash Enabled | - |
Location Collection Enabled | Location Collection Enabled | - |
Track Airbridge Link Only | Track Airbridge Link Only | - |
Auto Start Tracking Enabled | Auto Start Tracking Enabled | - |
- | Facebook Deferred App Link Enabled | New features have been added. |
iOS Tracking Authorize Timeout Seconds | iOS Tracking Authorize Timeout Seconds | - |
SDK Signature Secret ID | SDK Signature Secret ID | - |
SDK Signature Secret | SDK Signature Secret | - |
- | Track In Session Life Cycle Event Enabled | New features have been added. |
- | Pause Event Transmit On Background Enabled | New features have been added. |
- | Clear Event Buffer On Initialize Enabled | New features have been added. |
- | SDK Enabled | New features have been added. |
- | App Market Identifier | New features have been added. |
- | Event Buffer Count Limit | New features have been added. |
- | Event Buffer Size Limit In Gibibyte | New features have been added. |
- | Event Transmit Interval Seconds | New features have been added. |
Meta Install Referrer (Facebook App ID) | Meta Install Referrer (Facebook App ID) | - |
Attention
The name of the access function class has been changed from
FAirbridgeUnrealtoFAirbridge.
FAirbridgeUnreal (v1) | FAirbridge (v4) | Change |
|---|---|---|
- | EnableSDK | New features have been added. |
- | DisableSDK | New features have been added. |
- | IsSDKEnabled | New features have been added. |
StartTracking | StartTracking | - |
- | StopTracking | New features have been added. |
- | IsTrackingEnabled | New features have been added. |
SetUserID | SetUserID | - |
- | ClearUserID | New features have been added. |
SetUserEmail | SetUserEmail | - |
- | ClearUserEmail | New features have been added. |
SetUserPhone | SetUserPhone | - |
- | ClearUserPhone | New features have been added. |
SetUserAttribute | SetUserAttribute | - |
RemoveUserAttribute | RemoveUserAttribute | - |
ClearUserAttributes | ClearUserAttributes | - |
SetUserAlias | SetUserAlias | - |
RemoveUserAlias | RemoveUserAlias | - |
ClearUserAlias | ClearUserAlias | - |
ClearUser | ClearUser | - |
Click | Click | Callback function has been added. |
Impression | Impression | Callback function has been added. |
SetDeeplinkCallback | SetOnDeeplinkReceived | The name has been changed. The value has been changed to be received in lambda form. |
SetAttributionCallback | SetOnAttributionReceived | The name has been changed. The value has been changed to be received in lambda form. |
TrackEvent | TrackEvent | The method of receiving event information in TrackEvent has changed. |
SetDeviceAlias | SetDeviceAlias | - |
RemoveDeviceAlias | RemoveDeviceAlias | - |
ClearDeviceAlias | ClearDeviceAlias | - |
RegisterPushToken | RegisterPushToken | - |
CreateWebInterface | - | It has been replaced with functions related to WebInterface. |
- | CreateWebInterfaceScript | New features have been added. |
- | HandleWebInterfaceCommand | New features have been added. |
- | FetchAirbridgeGeneratedUUID | New features have been added. |
- | FetchDeviceUUID | New features have been added. |
- | IsUninstallTrackingNotification | New features have been added. |
AirbridgeConstants::CATEGORY (v1) | AirbridgeCategory (v4) | Change |
|---|---|---|
SIGN_UP | SIGN_UP | - |
SIGN_IN | SIGN_IN | - |
SIGN_OUT | SIGN_OUT | - |
VIEW_HOME | - | The feature has been removed. Please enter in HOME_VIEWED. |
HOME_VIEWED | HOME_VIEWED | - |
VIEW_SEARCH_RESULT | - | The feature has been removed. Please enter in SEARCH_RESULTS_VIEWED. |
SEARCH_RESULTS_VIEWED | SEARCH_RESULTS_VIEWED | - |
VIEW_PRODUCT_LIST | - | The feature has been removed. Please enter in PRODUCT_LIST_VIEWED. |
PRODUCT_LIST_VIEWED | PRODUCT_LIST_VIEWED | - |
VIEW_PRODUCT_DETAILS | - | The feature has been removed. Please enter in PRODUCT_VIEWED. |
PRODUCT_VIEWED | PRODUCT_VIEWED | - |
ADD_TO_CART | - | The feature has been removed. Please enter in ADDED_TO_CART. |
ADDED_TO_CART | ADDED_TO_CART | - |
ORDER_COMPLETE | - | The feature has been removed. Please enter in ORDER_COMPLETED. |
ORDER_COMPLETED | ORDER_COMPLETED | - |
ADD_PAYMENT_INFO | ADD_PAYMENT_INFO | - |
ADD_TO_WISHLIST | ADD_TO_WISHLIST | - |
INITIATE_CHECKOUT | INITIATE_CHECKOUT | - |
ORDER_CANCELED | ORDER_CANCELED | - |
START_TRIAL | START_TRIAL | - |
SUBSCRIBE | SUBSCRIBE | - |
UNSUBSCRIBE | UNSUBSCRIBE | - |
AD_IMPRESSION | AD_IMPRESSION | - |
AD_CLICK | AD_CLICK | - |
COMPLETE_TUTORIAL | COMPLETE_TUTORIAL | - |
ACHIEVE_LEVEL | ACHIEVE_LEVEL | - |
UNLOCK_ACHIEVEMENT | UNLOCK_ACHIEVEMENT | - |
RATE | RATE | - |
SHARE | SHARE | - |
SCHEDULE | SCHEDULE | - |
SPEND_CREDITS | SPEND_CREDITS | - |
AirbridgeConstants::ATTRIBUTES (v1) | AirbridgeAttribute (v4) | Change |
|---|---|---|
- | ACTION | New features have been added. |
- | LABEL | New features have been added. |
- | VALUE | New features have been added. |
TOTAL_VALUE | - | The feature has been removed. Please enter in VALUE. |
CURRENCY | CURRENCY | - |
ORIGINAL_CURRENCY | ORIGINAL_CURRENCY | - |
PRODUCTS | PRODUCTS | - |
PERIOD | PERIOD | - |
IS_RENEWAL | IS_RENEWAL | - |
RENEWAL_COUNT | RENEWAL_COUNT | - |
PRODUCT_LIST_ID | PRODUCT_LIST_ID | - |
CART_ID | CART_ID | - |
TRANSACTION_ID | TRANSACTION_ID | - |
TRANSACTION_TYPE | TRANSACTION_TYPE | - |
TRANSACTION_PAIRED_EVENT_CATEGORY | TRANSACTION_PAIRED_EVENT_CATEGORY | - |
TRANSACTION_PAIRED_EVENT_TIMESTAMP | TRANSACTION_PAIRED_EVENT_TIMESTAMP | - |
TOTAL_QUANTITY | TOTAL_QUANTITY | - |
QUERY | QUERY | - |
IN_APP_PURCHASED | IN_APP_PURCHASED | - |
CONTRIBUTION_MARGIN | CONTRIBUTION_MARGIN | - |
ORIGINAL_CONTRIBUTION_MARGIN | ORIGINAL_CONTRIBUTION_MARGIN | - |
LIST_ID | LIST_ID | - |
RATE_ID | RATE_ID | - |
RATE | RATE | - |
MAX_RATE | MAX_RATE | - |
ACHIEVEMENT_ID | ACHIEVEMENT_ID | - |
SHARED_CHANNEL | SHARED_CHANNEL | - |
DATE_TIME | DATE_TIME | - |
DESCRIPTION | DESCRIPTION | - |
IS_REVENUE | IS_REVENUE | - |
PLACE | PLACE | - |
SCHEDULE_ID | SCHEDULE_ID | - |
TYPE | TYPE | - |
LEVEL | LEVEL | - |
SCORE | SCORE | - |
- | AD_PARTNERS | New features have been added. |
- | IS_FIRST_PER_USER | New features have been added. |
AirbridgeConstants::PRODUCT (v1) | AirbridgeAttribute (v4) | Change |
|---|---|---|
ID | PRODUCT_ID | Changed to constant key value. |
NAME | PRODUCT_NAME | Changed to constant key value. |
PRICE | PRODUCT_PRICE | Changed to constant key value. |
QUANTITY | PRODUCT_QUANTITY | Changed to constant key value. |
CURRENCY | PRODUCT_CURRENCY | Changed to constant key value. |
POSITION | PRODUCT_POSITION | Changed to constant key value. |
CATEGORY_ID | PRODUCT_CATEGORY_ID | Changed to constant key value. |
CATEGORY_NAME | PRODUCT_CATEGORY_NAME | Changed to constant key value. |
BRAND_ID | PRODUCT_BRAND_ID | Changed to constant key value. |
BRAND_NAME | PRODUCT_BRAND_NAME | Changed to constant key value. |
- (v1) | AirbridgeUnreal (v4) | Change |
|---|---|---|
- | setLifecycleIntegration | New features have been added. |
The location of the Airbridge configuration values recorded in the Project > Config > DefaultAirbridge.ini file has been moved to the [/Script/AirbridgeEditor.AirbridgeSettings] section of the Project > Config > DefaultEngine.ini file.
The FAirbridgeUnreal::StartTracking function has been replaced with the FAirbridge::StartTracking function.
- FAirbridgeUnreal::StartTracking();
+ FAirbridge::StartTracking();The FAirbridgeUnreal::StopTracking function has been replaced with the FAirbridge::StopTracking function.
- FAirbridgeUnreal::StopTracking();
+ FAirbridge::StopTracking();The FAirbridgeUnreal::SetDeeplinkCallback function has been replaced with the FAirbridge::SetOnDeeplinkReceived function.
- AExampleGameModeBase::AExampleGameModeBase()
- {
- AirbridgeCallbacks = CreateDefaultSubobject<UAirbridgeCallbacks>(TEXT("AIRBRIDGE_CALLBACKS"));
- }
void AExampleGameModeBase::BeginPlay()
{
- AirbridgeCallbacks->OnDeeplinkReceived.AddDynamic(this, &AExampleGameModeBase::OnDeeplinkReceived);
- FAirbridgeUnreal::SetDeeplinkCallback();
+ FAirbridge::SetOnDeeplinkReceived([](const FString& Url)
+ {
+ // show proper content
+ });
}
- void AExampleGameModeBase::OnDeeplinkReceived(const FString& Url)
- {
- // show proper content
- }In version 1.x, only one custom domain could be specified, but starting from version 4.0, multiple custom domains can be entered.
The FAirbridgeUnreal::TrackEvent function has been replaced with the FAirbridge::TrackEvent function.
- FAirbridgeUnreal::TrackEvent(
- AirbridgeConstants::CATEGORY::ORDER_COMPLETED,
- UAirbridgeEventOption::CreateObject()
- ->SetAction("Tool")
- ->SetLabel("Hammer")
- ->SetValue(10.0)
- ->SetSemanticAttributes(
- UAirbridgeMap::CreateObject()
- ->Set(AirbridgeConstants::ATTRIBUTES::CURRENCY, "USD")
- ->Set(AirbridgeConstants::ATTRIBUTES::PRODUCTS, UAirbridgeList::CreateObject()
- ->Add(UAirbridgeMap::CreateObject()
- ->Set(AirbridgeConstants::PRODUCT::ID, "12345")
- ->Set("name", "PlasticHammer")
- )
- )
- ->Set("totalQuantity", 1)
- )
- ->SetCustomAttributes(
- UAirbridgeMap::CreateObject()
- ->Set("promotion", "FirstPurchasePromotion")
- )
- );
+ FAirbridge::TrackEvent(
+ AirbridgeCategory::ORDER_COMPLETED,
+ UAirbridgeMap::CreateObject()
+ ->Set(AirbridgeAttribute::ACTION, "Tool")
+ ->Set(AirbridgeAttribute::LABEL, "Hammer")
+ ->Set(AirbridgeAttribute::VALUE, 10)
+ ->Set(AirbridgeAttribute::CURRENCY, "USD")
+ ->Set(AirbridgeAttribute::PRODUCTS, UAirbridgeList::CreateObject()->Add(
+ UAirbridgeMap::CreateObject()
+ ->Set(AirbridgeAttribute::PRODUCT_ID, "12345")
+ ->Set("name", "PlasticHammer")
+ )
+ )
+ ->Set("totalQuantity", 1),
+ UAirbridgeMap::CreateObject()
+ ->Set("promotion", "FirstPurchasePromotion")
+ );The AirbridgeConstants::CATEGORY Namespace has been changed to ArbridgeCategory and the AirbridgeConstants::ATTRIBUTES Namespace has been changed to AirbridgeAttribute.
The first parameter of the FAirbridge::TrackEvent function should now contain category information.
The second parameter of the FAirbridge::TrackEvent function should contain the Semantic Attributes values.
The third parameter of the FAirbridge::TrackEvent function should contain the Custom Attributes values.
The FAirbridgeUnreal::SetUser function has been replaced with the FAirbridge::SetUser function.
- FAirbridgeUnreal::SetUserID("personID");
- FAirbridgeUnreal::SetUserEmail("persondoe@airbridge.io");
- FAirbridgeUnreal::SetUserPhone("1(123)123-1234");
- FAirbridgeUnreal::SetUserAttribute("key", "value");
- FAirbridgeUnreal::SetUserAlias("key", "value");
+ FAirbridge::SetUserID("personID");
+ FAirbridge::SetUserEmail("persondoe@airbridge.io");
+ FAirbridge::SetUserPhone("1(123)123-1234");
+ FAirbridge::SetUserAttribute("key", "value");
+ FAirbridge::SetUserAlias("key", "value");The FAirbridgeUnreal::Impression function has been replaced with the FAirbridge::Impression function.
- FAirbridgeUnreal::Impression(TEXT("https://abr.ge/~~~"));
+ FAirbridge::Impression(
+ TEXT("https://abr.ge/~~~"),
+ []()
+ {
+ // Handle on success
+ },
+ [](const FString& Error)
+ {
+ // Handle on failure
+ }
+);The FAirbridgeUnreal::Click function has been replaced with the FAirbridge::Clickfunction.
- FAirbridgeUnreal::Click(TEXT("https://abr.ge/~~~"));
+ FAirbridge::Click(
+ TEXT("https://abr.ge/~~~"),
+ []()
+ {
+ // Handle on success
+ },
+ [](const FString& Error)
+ {
+ // Handle on failure
+ }
+);The FAirbridgeUnreal::SetAttributionCallback function has been replaced with the FAirbridge::SetOnAttributionReceived function.
- AExampleGameModeBase::AExampleGameModeBase()
- {
- AirbridgeCallbacks = CreateDefaultSubobject<UAirbridgeCallbacks>(TEXT("AIRBRIDGE_CALLBACKS"));
- }
void AExampleGameModeBase::BeginPlay()
{
- AirbridgeCallbacks->OnAttributionReceived.AddDynamic(this, &AExampleGameModeBase::OnAttributionReceived);
- FAirbridgeUnreal::SetAttributionCallback();
+ FAirbridge::SetOnAttributionReceived([this](const TMap<FString, FString>& AttributionResult)
+ {
+ // using attribution
+ });
}
- void AExampleGameModeBase::OnAttributionReceived(const FAirbridgeAttribution& Attribution)
- {
- // using attribution
- }- FAirbridgeUnreal::SetDeviceAlias("ADD_YOUR_KEY", "AND_YOUR_VALUE");
+ FAirbridge::SetDeviceAlias("ADD_YOUR_KEY", "AND_YOUR_VALUE");
- FAirbridgeUnreal::RemoveDeviceAlias("DELETE_THIS_KEY");
+ FAirbridge::RemoveDeviceAlias("DELETE_THIS_KEY");
- FAirbridgeUnreal::ClearDeviceAlias();
+ FAirbridge::ClearDeviceAlias();The FAirbridgeUnreal::CreateWebInterface function has been replaced with the FAirbridge::CreateWebInterfaceScript and the FAirbridge::HandleWebInterfaceCommand functions.
- TUniquePtr<IAirbridgeWebInterface> AirbridgeWebInterface;
+ FString WebInterfaceScript;
- AirbridgeWebInterface = TUniquePtr<IAirbridgeWebInterface>(FAirbridgeUnreal::CreateWebInterface(
- TEXT("YOUR_WEB_TOKEN"),
- [](const FString& Msg) -> FString
- {
- return TEXT("...");
- }
- ));
+ WebInterfaceScript = FAirbridge::CreateWebInterfaceScript(
+ TEXT("YOUR_WEB_TOKEN"),
+ [](const FString& Msg) -> FString
+ {
+ return TEXT("...");
+ }("payload")
+ );Was this helpful?