기타 iOS API

중요

Visual Studio App Center는 2025년 3월 31일에 사용 중지될 예정입니다. Visual Studio App Center가 완전히 사용 중지될 때까지 계속 사용할 수 있지만 마이그레이션을 고려할 수 있는 몇 가지 권장 대안이 있습니다.

지원 타임라인 및 대안에 대해 자세히 알아봅니다.

로그 수준 조정

콘솔의 App Center에서 표시되는 로그 메시지의 양을 제어할 수 있습니다. -API를 setLogLevel:사용하여 디버깅하는 동안 추가 로깅을 사용하도록 설정합니다. 기본적으로 App Store 환경에 대해 로 설정되고 LogLevelWarning 그렇지 않으면 로 설정 LogLevelAssert 됩니다.

가능한 한 많은 로그 메시지를 사용하려면 를 사용합니다 MSACLogLevelVerbose/LogLevel.verbose.

[MSACAppCenter setLogLevel:MSACLogLevelVerbose];
AppCenter.logLevel = .verbose

설치 식별

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

NSUUID *installId = [MSACAppCenter  installId];
var installId = AppCenter.installId

사용자 식별

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

  1. App Center SDK 시작 가이드에 설명된 대로 를 호출 :start:withServices: 하여 App Center SDK를 구성합니다.
  2. userID 다음 코드를 사용하여 SDK에서 를 설정합니다.
[MSACAppCenter setUserId:@"your-user-id"];
AppCenter.userId = "your-user-id"

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

참고

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

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

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

[MSACAppCenter setEnabled:NO];
AppCenter.enabled = false

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

[MSACAppCenter setEnabled:YES];
AppCenter.enabled = true

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

참고

이 메서드는 시작된 후에 AppCenter 만 사용해야 합니다.

네트워크 요청 허용 안 하세요.

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

[MSACAppCenter setNetworkRequestsAllowed:false];
AppCenter.networkRequestsAllowed = false

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

[MSACAppCenter setNetworkRequestsAllowed:true];
AppCenter.networkRequestsAllowed = true

참고

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

언제든지 App Center SDK에서 데이터 전송이 허용되는지 여부를 검사 수 있습니다.

[MSACAppCenter isNetworkRequestsAllowed];
AppCenter.networkRequestsAllowed

런타임에서 서비스 상태 변경

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

[MSACAnalytics setEnabled:NO];
Analytics.enabled = false

참고

이 메서드는 시작된 후에 Analytics 만 사용해야 합니다.

App Center가 사용하도록 설정되어 있는지 확인

App Center를 사용하는지 여부를 검사 수도 있습니다.

[MSACAppCenter isEnabled];
AppCenter.enabled

참고

이 메서드는 시작된 후에 AppCenter 만 사용해야 하며, 시작 전에 항상 반환 false 됩니다.

런타임 시 App Center SDK 버전 확인

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

[MSACAppCenter sdkVersion];
AppCenter.sdkVersion

스토리지 크기

App Center SDK를 사용하는 경우 로그는 디바이스에 로컬로 저장됩니다. 큰 로그는 많은 공간을 차지할 수 있으므로 로컬 데이터베이스의 크기를 제한하도록 선택할 수 있습니다. 또한 및 resume API와 함께 pause 유용합니다. 오랫동안 일시 중지될 것으로 예상되는 경우 더 큰 데이터베이스 크기를 사용하여 더 많은 이벤트를 저장할 수 있습니다.

API를 setMaxStorageSize 사용하여 로컬 DB의 크기를 설정합니다. API는 비동기이며 completionHandler App Center 서비스를 시작할 때 가 호출됩니다. 이러한 이유로 를 setMaxStorageSize 호출하기 전에 를 호출 AppCenter.start해야 합니다. API를 한 번만 호출할 수 있습니다.

// Use 20 MB for storage.
[MSACAppCenter setMaxStorageSize:(20 * 1024 * 1024) completionHandler:^(BOOL success) {
    if (!success) {
        // The success parameter is false when the size can't be honored.
    }
}];
[MSACAppCenter start:@"{Your App Secret}", withServices:@[[MSACAnalytics class]]];
// Use 20 MB for storage.
AppCenter.setMaxStorageSize(20 * 1024 * 1024, completionHandler: { (success) in
    if !success {
        // The success parameter is false when the size can't be honored.
    }
})
AppCenter.start(withAppSecret: "{Your App Secret}", services:[Analytics.self])

최대 스토리지 크기를 설정하지 않으면 SDK는 기본 최대 크기 10MB를 사용합니다. 설정할 수 있는 최소 크기는 20KB입니다.

참고

실제 최대 스토리지 크기는 선택한 값보다 약간 더 높을 수 있습니다. SQLite는 크기를 페이지 크기의 다음 배수로 반올림합니다. App Center SDK는 4KB의 페이지 크기를 사용합니다.

참고

25일보다 오래된 로그는 삭제됩니다.

실패한 API 호출

호출이 false를 반환할 수 있는 completionHandler 여러 가지 이유가 있습니다.

  • 지정된 크기가 잘못된 값입니다(20KB 미만 또는 140TB 초과).
  • 현재 데이터베이스 크기가 지정된 최대 크기보다 큽니다.
  • API가 이미 호출되었습니다. 프로세스당 한 번만 구성할 수 있습니다.
  • API는 또는 AppCenter.configure이후에 AppCenter.start 호출되었습니다.

로그 태그를 사용하여 AppCenter 콘솔에서 경고 및 오류를 검사 구성 문제를 해결할 수 있습니다.