다음을 통해 공유


기타 Unity API

중요합니다

Visual Studio App Center는 2026년 6월 30일까지 계속 지원되는 분석 및 진단 기능을 제외하고 2025년 3월 31일에 사용 중지되었습니다. 자세히 알아보기.

로그 수준 조정

콘솔의 App Center에서 표시되는 로그 메시지 수를 제어할 수 있습니다. LogLevel-API를 사용하여 디버깅하는 동안 추가 로깅을 사용하도록 설정합니다. 기본적으로 앱 스토어 환경에서는 ASSERT로 설정되고, 그렇지 않으면 WARN로 설정됩니다.

가능한 한 많은 로그 메시지를 받기 위해 App Center 설정 또는 코드 내에서 LogLevel.Verbose을 활성화합니다.

AppCenter.LogLevel = LogLevel.Verbose;

설치 식별

App Center SDK는 앱이 설치되면 각 디바이스에 대한 UUID를 만듭니다. 이 식별자는 앱이 업데이트되는 경우 디바이스에 대해 동일하게 유지됩니다. 새 식별자는 앱이 다시 설치될 때만 생성됩니다. 다음 API는 디버깅 용도로 유용합니다.

System.Guid? installId = await AppCenter.GetInstallIdAsync();

사용자 확인

App Center SDK는 충돌 보고서를 보강하는 데 사용되는 사용자 ID 설정을 지원합니다. 이 기능을 사용하려면 다음을 수행합니다.

  1. App Center SDK 시작 가이드에 설명된 대로 App Center SDK를 구성합니다.
  2. userID 다음 코드를 사용하여 SDK에서 설정합니다.
AppCenter.SetUserId("your-user-id");

사용자 ID를 설정한 후 App Center의 검색 기능을 사용하여 ID에 대한 특정 충돌 보고서를 검색할 수 있습니다. App Center의 검색 설명서에서 자세히 알아보세요.

비고

사용자 ID의 값은 256자로 제한됩니다. 크래시 보고서와 함께 표시되지만 집계 또는 영향을 받는 사용자 수에는 사용되지 않습니다. 사용자 ID를 여러 번 설정하는 경우 마지막 사용자 ID만 사용됩니다. 이 값은 시작 사이에 SDK에 의해 저장되지 않으므로 각 애플리케이션을 시작하기 전에 사용자 ID를 직접 설정해야 합니다.

런타임에 모든 서비스 사용 안 함

모든 App Center 서비스를 한 번에 사용하지 않도록 설정하려면 이 속성을 사용합니다 Enabled . 사용하지 않도록 설정하면 SDK는 App Center에 정보를 전달하지 않습니다.

AppCenter.SetEnabledAsync(false);

모든 서비스를 한 번에 다시 사용하도록 설정하려면 동일한 API를 사용하지만 매개 변수로 전달 true 합니다.

AppCenter.SetEnabledAsync(true);

다른 API 호출(예: IsEnabledAsync와 같은)을 일관되게 만들기 위해 이 호출을 기다릴 필요가 없습니다.

상태는 애플리케이션 시작 시 디바이스의 스토리지에 유지됩니다.

런타임의 서비스 상태 변경

다음 코드를 사용하여 런타임에 서비스를 사용하거나 사용하지 않도록 설정할 수 있습니다.

Analytics.SetEnabledAsync(true);

네트워크 요청 차단

App Center SDK에서 네트워크 요청은 기본적으로 허용됩니다. App Center SDK가 사용자 우려로 수집한 데이터를 보내려면 자동 전송 데이터를 허용하지 않습니다.

AppCenter.IsNetworkRequestsAllowed = false;

이 경우 App Center SDK는 계속해서 데이터를 수집하지만 네트워크 요청이 허용되는 경우에만 전송됩니다.

AppCenter.IsNetworkRequestsAllowed = true;

비고

이 값은 시작 사이에 유지됩니다.

언제든지 App Center SDK에서 데이터를 보낼 수 있는지 여부를 확인할 수 있습니다.

AppCenter.IsNetworkRequestsAllowed;

비고

Android 플랫폼에서 SharedPreferences가 시작되기 전까지는 이전에 AppCenter에 저장한 값이 무시됩니다. AppCenter를 시작하기 전에 값이 변경되지 않았으면 AppCenter.IsNetworkRequestsAllowed = allowed 또는 true를 사용하여 설정된 마지막 값을 반환합니다.

App Center를 사용할 수 있는지 확인

App Center를 사용할 수 있는지 여부도 확인할 수 있습니다.

bool enabled = await AppCenter.IsEnabledAsync();

런타임에 App Center SDK 버전 확인

현재 사용 중인 App Center SDK 버전을 가져올 수 있습니다.

AppCenter.SdkVersion;

App Center 시작 지연

AppCenterBehavior가 시작될 때까지 App Center 시작을 지연하려는 경우가 있을 수 있습니다. 예를 들어 App Center 서비스를 시작하기 전에 사용자 동의를 요청하려는 경우입니다.
이렇게 하려면 AppCenterBehaviorAdvanced 를 게임 개체에 추가하고 iOS/Android 앱 확인란에서 기본 SDK 시작 확인란을 선택합니다. Start 메서드에서 SDK를 시작하고 사용자 지정 대화 상자 또는 기타 논리를 추가할 수 있습니다.

팁 (조언)

빌드 시 설정을 생성하는 경우 다른 방법은 플레이어 설정>>스크립팅 기호 정의로 이동하여 붙여넣APPCENTER_DONT_USE_NATIVE_STARTER는 것입니다.

Unity SDK의 비동기 API

비동기 API AppCenterTask 는 결과를 직접 반환하는 대신 개체를 반환하고 작업이 완료될 때까지 기다리지 않고 즉시 반환합니다.

이러한 메서드와 상호 작용하는 방법에는 세 가지가 있습니다.

메서드 1: ContinueWith

AppCenterTask의 작업이 완료된 후 작업을 수행하려면 ContinueWith 메서드를 사용하여 콜백을 추가합니다.

예제:

AppCenter.IsEnabledAsync().ContinueWith(task =>
{
    // Do something with task.Result
});

메서드에 실제 반환 값이 있는 경우 위의 예제와 같이 반환 AppCenterTask<{Return Type}> 됩니다. 이러한 상황에서 콜백의 작업 매개 변수에는 액세스할 수 있는 Result 속성이 있습니다.

방법 2: 기본 제공 언어 기능

.NET 4.6 이상을 사용할 수 있는 코드를 작성하는 경우 비동기 컨텍스트에서 AppCenterTask을(를) await할 수 있습니다.

예제:

bool isEnabled = await AppCenter.IsEnabledAsync();

방법 3: 코루틴

코루틴에서도 AppCenterTask를 사용할 수 있습니다.

예제:

void SomeMethod()
{
    StartCoroutine(IsEnabledCoroutine());
}

IEnumerator IsEnabledCoroutine()
{
    var isEnabled = AppCenter.IsEnabledAsync();
    yield return isEnabled;

    // do something with the isEnabled
}