SDK Migration - Unreal SDK

    This article contains the information required to update the Airbridge Unreal SDK. We recommend checking the information regarding all versions.

    Update from v1.x.x to v4.0.0

    Check the information below when updating the Airbridge Unreal SDK to v4.0.

    Option

    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)

    -

    Function (Unreal)

    Attention

    The name of the access function class has been changed from FAirbridgeUnreal to FAirbridge.

    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.

    Constant (Unreal)

    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.

    Function (Android)

    - (v1)

    AirbridgeUnreal (v4)

    Change

    -

    setLifecycleIntegration

    New features have been added.

    SDK installation and initialization

    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.

    12
    - FAirbridgeUnreal::StartTracking();
    + FAirbridge::StartTracking();

    The FAirbridgeUnreal::StopTracking function has been replaced with the FAirbridge::StopTracking function.

    12
    - FAirbridgeUnreal::StopTracking();
    + FAirbridge::StopTracking();

    Deep Linking

    The FAirbridgeUnreal::SetDeeplinkCallback function has been replaced with the FAirbridge::SetOnDeeplinkReceived function.

    1234567891011121314151617181920
    - 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 
    - }

    Set up custom domain

    In version 1.x, only one custom domain could be specified, but starting from version 4.0, multiple custom domains can be entered.

    In-app events and user data

    The FAirbridgeUnreal::TrackEvent function has been replaced with the FAirbridge::TrackEvent function.

    12345678910111213141516171819202122232425262728293031323334353637383940
    - 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.

    1234567891011
    - 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");

    Additional settings

    The FAirbridgeUnreal::Impression function has been replaced with the FAirbridge::Impression function.

    12345678910111213
    - 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.

    12345678910111213
    - 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.

    1234567891011121314151617181920
    - 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
    - }

    Device identifier setup

    12345678
    - 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();

    Hybrid app setup

    The FAirbridgeUnreal::CreateWebInterface function has been replaced with the FAirbridge::CreateWebInterfaceScript and the FAirbridge::HandleWebInterfaceCommand functions.

    123456789101112131415161718
    - 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")
    + );

    このページは役に立ちましたか?

    ご質問やご提案はありますか?