에어브릿지 언리얼 SDK의 업데이트에 필요한 사항을 확인할 수 있습니다. 현재 버전 이후부터 업데이트 이후 버전까지의 사항을 모두 확인하는 것을 권장합니다.
에어브릿지 언리얼 SDK를 v4.0으로 업데이트하면 확인해 주세요.
Airbridge Settings (v1) | Airbridge Settings (v4) | 변경점 |
---|---|---|
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 | 다중 입력을 지원 기능이 추가되었습니다. |
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 | 새로운 기능이 추가되었습니다. |
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 | 새로운 기능이 추가되었습니다. |
- | Pause Event Transmit On Background Enabled | 새로운 기능이 추가되었습니다. |
- | Clear Event Buffer On Initialize Enabled | 새로운 기능이 추가되었습니다. |
- | SDK Enabled | 새로운 기능이 추가되었습니다. |
- | App Market Identifier | 새로운 기능이 추가되었습니다. |
- | Event Buffer Count Limit | 새로운 기능이 추가되었습니다. |
- | Event Buffer Size Limit In Gibibyte | 새로운 기능이 추가되었습니다. |
- | Event Transmit Interval Seconds | 새로운 기능이 추가되었습니다. |
Meta Install Referrer (Facebook App ID) | Meta Install Referrer (Facebook App ID) | - |
주의하세요
접근 함수 클래스의 이름이
FAirbridgeUnreal
에서FAirbridge
로 변경 되었습니다.
FAirbridgeUnreal (v1) | FAirbridge (v4) | 변경점 |
---|---|---|
- | EnableSDK | 새로운 기능이 추가되었습니다. |
- | DisableSDK | 새로운 기능이 추가되었습니다. |
- | IsSDKEnabled | 새로운 기능이 추가되었습니다. |
StartTracking | StartTracking | - |
- | StopTracking | 새로운 기능이 추가되었습니다. |
- | IsTrackingEnabled | 새로운 기능이 추가되었습니다. |
SetUserID | SetUserID | - |
- | ClearUserID | 새로운 기능이 추가되었습니다. |
SetUserEmail | SetUserEmail | - |
- | ClearUserEmail | 새로운 기능이 추가되었습니다. |
SetUserPhone | SetUserPhone | - |
- | ClearUserPhone | 새로운 기능이 추가되었습니다. |
SetUserAttribute | SetUserAttribute | - |
RemoveUserAttribute | RemoveUserAttribute | - |
ClearUserAttributes | ClearUserAttributes | - |
SetUserAlias | SetUserAlias | - |
RemoveUserAlias | RemoveUserAlias | - |
ClearUserAlias | ClearUserAlias | - |
ClearUser | ClearUser | - |
Click | Click | 콜백 기능이 추가되었습니다. |
Impression | Impression | 콜백 기능이 추가되었습니다. |
SetDeeplinkCallback | SetOnDeeplinkReceived | 이름이 변경되었습니다. 값을 람다 형태로 제공받도록 변경되었습니다. |
SetAttributionCallback | SetOnAttributionReceived | 이름이 변경되었습니다. 값을 람다 형태로 제공받도록 변경되었습니다. |
TrackEvent | TrackEvent | 이벤트 정보를 입력받는 방식이 변경되었습니다. |
SetDeviceAlias | SetDeviceAlias | - |
RemoveDeviceAlias | RemoveDeviceAlias | - |
ClearDeviceAlias | ClearDeviceAlias | - |
RegisterPushToken | RegisterPushToken | - |
CreateWebInterface | - | WebInterface 관련 함수들로 대체되었습니다. |
- | CreateWebInterfaceScript | 새로운 기능이 추가되었습니다. |
- | HandleWebInterfaceCommand | 새로운 기능이 추가되었습니다. |
- | FetchAirbridgeGeneratedUUID | 새로운 기능이 추가되었습니다. |
- | FetchDeviceUUID | 새로운 기능이 추가되었습니다. |
- | IsUninstallTrackingNotification | 새로운 기능이 추가되었습니다. |
AirbridgeConstants::CATEGORY (v1) | AirbridgeCategory (v4) | 변경점 |
---|---|---|
SIGN_UP | SIGN_UP | - |
SIGN_IN | SIGN_IN | - |
SIGN_OUT | SIGN_OUT | - |
VIEW_HOME | - | HOME_VIEWED로 대체되었습니다. |
HOME_VIEWED | HOME_VIEWED | - |
VIEW_SEARCH_RESULT | - | SEARCH_RESULTS_VIEWED로 대체되었습니다. |
SEARCH_RESULTS_VIEWED | SEARCH_RESULTS_VIEWED | - |
VIEW_PRODUCT_LIST | - | PRODUCT_LIST_VIEWED로 대체되었습니다. |
PRODUCT_LIST_VIEWED | PRODUCT_LIST_VIEWED | - |
VIEW_PRODUCT_DETAILS | - | PRODUCT_VIEWED로 대체되었습니다. |
PRODUCT_VIEWED | PRODUCT_VIEWED | - |
ADD_TO_CART | - | ADDED_TO_CART로 대체되었습니다. |
ADDED_TO_CART | ADDED_TO_CART | - |
ORDER_COMPLETE | - | 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) | 변경점 |
---|---|---|
- | ACTION | 상수 키 값이 추가되었습니다. |
- | LABEL | 상수 키 값이 추가되었습니다. |
- | VALUE | 상수 키 값이 추가되었습니다. |
TOTAL_VALUE | - | 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 | 새로운 기능이 추가되었습니다. |
- | IS_FIRST_PER_USER | 새로운 기능이 추가되었습니다. |
AirbridgeConstants::PRODUCT (v1) | AirbridgeAttribute (v4) | 변경점 |
---|---|---|
ID | PRODUCT_ID | 상수 키 값으로 변경되었습니다. |
NAME | PRODUCT_NAME | 상수 키 값으로 변경되었습니다. |
PRICE | PRODUCT_PRICE | 상수 키 값으로 변경되었습니다. |
QUANTITY | PRODUCT_QUANTITY | 상수 키 값으로 변경되었습니다. |
CURRENCY | PRODUCT_CURRENCY | 상수 키 값으로 변경되었습니다. |
POSITION | PRODUCT_POSITION | 상수 키 값으로 변경되었습니다. |
CATEGORY_ID | PRODUCT_CATEGORY_ID | 상수 키 값으로 변경되었습니다. |
CATEGORY_NAME | PRODUCT_CATEGORY_NAME | 상수 키 값으로 변경되었습니다. |
BRAND_ID | PRODUCT_BRAND_ID | 상수 키 값으로 변경되었습니다. |
BRAND_NAME | PRODUCT_BRAND_NAME | 상수 키 값으로 변경되었습니다. |
- (v1) | AirbridgeUnreal (v4) | 변경점 |
---|---|---|
- | setLifecycleIntegration | 새로운 기능이 추가되었습니다. |
에어브릿지 언리얼 SDK의 업데이트에 필요한 사항을 확인할 수 있습니다. 현재 버전 이후부터 업데이트 이후 버전까지의 사항을 모두 확인하는 것을 권장합니다.
Project > Config > DefaultAirbridge.ini
파일에 기록된 에어브릿지 설정값의 위치가 Project > Config > DefaultEngine.ini
파일의 [/Script/AirbridgeEditor.AirbridgeSettings]
섹션으로 이동하였습니다.
FAirbridgeUnreal::StartTracking
함수가 FAirbridge::StartTracking
함수로 대체되었습니다.
- FAirbridgeUnreal::StartTracking();
+ FAirbridge::StartTracking();
FAirbridgeUnreal::StopTracking
함수가 FAirbridge::StopTracking
함수로 대체되었습니다.
- FAirbridgeUnreal::StopTracking();
+ FAirbridge::StopTracking();
FAirbridgeUnreal::SetDeeplinkCallback
함수가 FAirbridge::SetOnDeeplinkReceived
함수로 대체되었습니다.
- 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
- }
FAirbridgeUnreal::TrackEvent
함수가 FAirbridge::TrackEvent
함수로 대체되었습니다.
- 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")
+ );
AirbridgeConstants::CATEGORY
Namespace가 ArbridgeCategory
로, AirbridgeConstants::ATTRIBUTES
Namespace가 AirbridgeAttribute
로 변경 되었습니다.
FAirbridge::TrackEvent
함수의 첫 번째 파라미터에 category
정보가 포함되어야 합니다.
FAirbridge::TrackEvent
함수의 두 번째 파라미터에 Semantic Attributes
값들이 포함되어야 합니다.
FAirbridge::TrackEvent
함수의 세 번째 파라미터에 Custom Attributes
값들이 포함되어야 합니다.
FAirbridgeUnreal::SetUser
함수가 FAirbridge::SetUser
관련 함수로 대체되었습니다.
- 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");
FAirbridgeUnreal::Impression
함수가 FAirbridge::Impression
함수로 대체되었습니다.
- FAirbridgeUnreal::Impression(TEXT("https://abr.ge/~~~"));
+ FAirbridge::Impression(
+ TEXT("https://abr.ge/~~~"),
+ []()
+ {
+ // Handle on success
+ },
+ [](const FString& Error)
+ {
+ // Handle on failure
+ }
+);
FAirbridgeUnreal::Click
함수가 FAirbridge::Click
함수로 대체되었습니다.
- FAirbridgeUnreal::Click(TEXT("https://abr.ge/~~~"));
+ FAirbridge::Click(
+ TEXT("https://abr.ge/~~~"),
+ []()
+ {
+ // Handle on success
+ },
+ [](const FString& Error)
+ {
+ // Handle on failure
+ }
+);
FAirbridgeUnreal::SetAttributionCallback
함수가 FAirbridge::SetOnAttributionReceived
함수로 대체되었습니다.
- 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();
FAirbridgeUnreal::CreateWebInterface
함수가 FAirbridge::CreateWebInterfaceScript
, FAirbridge::HandleWebInterfaceCommand
함수로 대체되었습니다.
- 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")
+ );
도움이 되었나요?