AWS Mobile SDK for Unity는 이제 AWS SDK for .NET에 포함됩니다. 이 가이드에서는 Mobile SDK for Unity의 아카이브 버전을 참조합니다. 자세한 정보는 AWS Mobile SDK for Unity란 무엇인가요? 섹션을 참조하세요.
Amazon Mobile Analytics
Amazon Mobile Analytics를 사용하면 고객 행동을 추적하고, 지표를 집계하고, 데이터 시각화를 생성하고, 유의미한 패턴을 식별할 수 있습니다. Mobile Analytics에 대한 자세한 내용은 AWS Mobile Analytics
Amazon Mobile Analytics 통합
다음 단원에서는 앱에 Mobile Analytics를 통합하는 방법을 설명합니다.
Mobile Analytics 콘솔에서 앱 생성
Amazon Mobile Analytics 콘솔로 이동하여 앱을 생성합니다. 나중에 필요하므로 appId
값을 기록합니다.
참고
콘솔 사용에 대한 자세한 내용은 Amazon Mobile Analytics 사용 설명서를 참조하십시오.
Mobile Analytics 콘솔에서 앱을 생성할 때 Cognito 자격 증명 풀 ID를 지정해야 합니다. 새 Cognito 자격 증명 풀을 만들고 ID를 생성하려면 Cognito 자격 증명 개발자 안내서를 참조하십시오.
앱에 Mobile Analytics 통합
Unity에서 Mobile Analytics에 액세스하려면 다음과 같은 using 문이 필요합니다.
using Amazon.MobileAnalytics.MobileAnalyticsManager; using Amazon.CognitoIdentity;
Amazon Cognito를 사용하여 애플리케이션에 임시 AWS 보안 인증을 제공하는 것이 모범 사례입니다. 이러한 보안 인증을 사용해 앱이 AWS 리소스에 액세스할 수 있습니다. 보안 인증 공급자를 생성하려면 Amazon Cognito 자격 증명의 지침을 따릅니다.
다음 정보를 사용하여 MobileAnalyticsManager 인스턴스를 생성합니다.
-
cognitoIdentityPoolId - 앱이 사용하는 Cognito 자격 증명 풀의 ID
-
cognitoRegion - Cognito 자격 증명 풀의 리전(예: "RegionEndpoint.USEast1")
-
region - Mobile Analytics 서비스의 리전(예: "RegionEndpoint.USEast1")
-
appId - 앱을 추가할 때 Mobile Analytics 콘솔이 생성한 값
다음 코드 조각과 같이 MobileAnalyticsClientContextConfig를 사용하여 MobileAnalyticsManager
인스턴스를 초기화합니다.
// Initialize the MobileAnalyticsManager void Start() { // ... analyticsManager = MobileAnalyticsManager.GetOrCreateInstance( new CognitoAWSCredentials(<cognitoIdentityPoolId>, <cognitoRegion>), <region>, <appId>); // ... }
참고
앱 ID는 앱 생성 마법사가 자동으로 생성합니다. 이들 두 값이 Mobile Analytics 콘솔 내 값과 일치해야 합니다.
appId
는 Mobile Analytics 콘솔에서 데이터를 그룹화하는 데 사용됩니다. Mobile Analytics 콘솔에서 앱을 생성한 후 앱 ID를 찾으려면 Mobile Analytics 콘솔로 이동하여 화면의 오른쪽 위에 있는 기어 모양 아이콘을 클릭합니다. 그러면 [App Management] 페이지가 열려 모든 등록된 앱 및 해당 앱 ID가 나열됩니다.
수익화 이벤트 기록
Unity용 SDK는 MonetizationEvent
클래스를 제공합니다. 이 클래스를 사용하면 수익화 이벤트를 생성하여 모바일 애플리케이션 내에서 발생한 구매를 추적할 수 있습니다. 다음 코드 조각은 수익화 이벤트를 생성하는 방법을 보여줍니다.
// Create the monetization event object MonetizationEvent monetizationEvent = new MonetizationEvent(); // Set the details of the monetization event monetizationEvent.Quantity = 3.0; monetizationEvent.ItemPrice = 1.99; monetizationEvent.ProductId = "ProductId123"; monetizationEvent.ItemPriceFormatted = "$1.99"; monetizationEvent.Store = "Your-App-Store"; monetizationEvent.TransactionId = "TransactionId123"; monetizationEvent.Currency = "USD"; // Record the monetiziation event analyticsManager.RecordEvent(monetizationEvent);
커스텀 이벤트 기록
Mobile Analytics를 사용하면 커스텀 이벤트를 정의할 수 있습니다. 커스텀 이벤트는 전적으로 개발자가 정의합니다. 이러한 이벤트는 앱 또는 게임에 고유한 사용자 작업을 추적하는 데 도움이 됩니다. 커스텀 이벤트에 대한 자세한 내용은 커스텀 이벤트AmazonMobileAnalyticsEvent
인스턴스를 생성하여 "LevelComplete" 이벤트를 생성합니다.
CustomEvent customEvent = new CustomEvent("LevelComplete"); // Add attributes customEvent.AddAttribute("LevelName","Level1"); customEvent.AddAttribute("CharacterClass","Warrior"); customEvent.AddAttribute("Successful","True"); // Add metrics customEvent.AddMetric("Score",12345); customEvent.AddMetric("TimeInLevel",64); // Record the event analyticsManager.RecordEvent(customEvent);
세션 기록
애플리케이션이 포커스를 잃을 경우 세션을 일시 중지할 수 있습니다. OnApplicationFocus
에서 앱이 일시 중지 중인지 여부를 확인합니다. 다음 코드 조각과 같이 일시 중지 중일 경우 PauseSession
을 호출하고, 그렇지 않을 경우 ResumeSession
을 호출합니다.
void OnApplicationFocus(bool focus) { if(focus) { analyticsManager.ResumeSession(); } else { analyticsManager.PauseSession(); } }
기본적으로 사용자가 5초 미만으로 앱에서 포커스를 돌렸다가 다시 앱에 포커스를 맞출 경우 세션이 재개됩니다. 사용자가 5초 이상 앱에서 포커스를 돌릴 경우 새로운 세션이 생성됩니다. 이 설정은 awsconfig.xml 파일에서 구성할 수 있습니다. 자세한 내용은 AWS Mobile SDK for Unity 시작하기의 Mobile Analytics 구성 섹션을 참조하십시오.