다음을 통해 공유


App Center SDK 4.0.0 이상으로 마이그레이션

중요합니다

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

Apple의 프라이빗 프레임워크에서 클래스와의 명명 충돌을 방지하기 위해 SDK는 이제 SDK API를 변경하는 대신 MSAC 접두사를 사용합니다MS.

Swift API는 이제 더 빠른 스타일을 가지며, 접두사 없이 모든 클래스를 사용해야 합니다. 예를 들면 다음과 같습니다. AppCenter 또한 Apple Swift 모범 사례에 따라 함수 및 속성 명명이 변경되었습니다.

App Center SDK 업데이트

먼저 종속성 관리자 중 하나를 사용하여 App Center SDK를 업데이트합니다.

API 사용

App Center SDK API를 업데이트하는 가장 빠르고 편리한 방법은 자동 고침을 사용하는 것입니다. 교체 후에는 아래와 같이 결과를 가져와야 합니다.

App Center SDK를 4.0.0 및 그 이상으로 업데이트하기 전에

[MSAppCenter start:@"{Your App Secret}" withServices:@[[MSAnalytics class], [MSCrashes class]]];
MSAppCenter.start("{Your App Secret}", withServices: [MSAnalytics.self, MSCrashes.self])

App Center SDK를 4.0.0 이상으로 업데이트한 후

[MSACAppCenter start:@"{Your App Secret}" withServices:@[[MSACAnalytics class], [MSACCrashes class]]];
AppCenter.start(withAppSecret: "{Your App Secret}", services: [Analytics.self, Crashes.self])

또한 getter [MSACWrapperCrashesHelper getCrashHandlerSetupDelegate] 는 이제 더 이상 사용되지 않습니다. 대신 사용 [MSACWrapperCrashesHelper crashHandlerSetupDelegate] 하세요.

다음 표에서는 이름이 변경된 API를 보여 줍니다.

App Center Core 아래쪽 4.0.0 App Center Core 4.0.0 +(ObjC) App Center Core 4.0.0+ (Swift)
MSAppCenter MSACAppCenter 앱센터
MSLogLevel MSACLogLevel 로그레벨
MSLogLevelVerbose MSACLogLevelVerbose LogLevel.verbose
MSLogLevelWarning MSACLogLevelWarning .경고
MSLogLevelInfo MSACLogLevelInfo .info
MSLogLevelAssert MSACLogLevelAssert .주장하다
MSLogHandler MSACLogHandler LogHandler
MSLogMessageProvider MSACLogMessageProvider 로그 메시지 제공자
App Center Analytics 아래에 4.0.0 App Center Analytics 4.0.0 + (ObjC) App Center Analytics 4.0.0+ (Swift)
MSAnalytics MSACAnalytics 애널리틱스
MSFlags MSACFlags 플래그
MSFlagsNormal MSACFlagsNormal Flags.normal
MSFlagsCritical MSACFlagsCritical .중요한
MSFlagsDefault MSACFlagsDefault .기본값
MSEventProperties MSACEventProperties 이벤트 속성
App Center가 더 낮게 충돌합니다. 4.0.0 App Center 충돌 4.0.0+ (ObjC) App Center 충돌 4.0.0+ (Swift)
MSCrashes MSACCrashes 충돌
MSCrashesDelegate MSACCrashesDelegate CrashesDelegate
MSErrorReport MSAC 오류 보고서 오류 보고서
MSErrorAttachmentLog MSAC 오류 첨부 로그 ErrorAttachmentLog
사용자 확인: 보내지 않기 보내지 않기 전송하지 않음
MS 사용자 확인 발송 MSAC 사용자 확인 전송 .보내기
MSUserConfirmationAlways MSACUserConfirmationAlways .항상
MSUserConfirmationHandler MSACUserConfirmationHandler 사용자확인처리기
App Center 하위 배포 4.0.0 App Center 배포 4.0.0+ (ObjC) App Center 배포 4.0.0+ (Swift)
MSDistribute MSACDistribute 배포
MSDistributeDelegate MSACDistributeDelegate DistributeDelegate
MSCrashHandlerSetupDelegate MSAC 오류 처리기 설정 대리자 CrashHandlerSetupDelegate
MS 릴리즈 세부사항 MSAC 릴리스 세부 정보 릴리즈 세부사항
MSUpdateAction MSACUpdateAction 업데이트 작업
MSUpdateActionUpdate 업데이트작업갱신 UpdateAction.업데이트
MS 업데이트 작업 연기 MSAC업데이트작업연기 .연기하다
MSUpdateTrack MSACUpdateTrack UpdateTrack
MSUpdateTrackPublic MSACUpdateTrackPublic UpdateTrack.public
MSUpdateTrackPrivate MSACUpdateTrackPrivate (MSAC 업데이트 트랙 프라이빗) .비공개

Swift API 변경 내용

App Center Core 아래쪽 4.0.0 App Center Core 4.0.0+
MSAppCenter.isEnabled() AppCenter.enabled
MSAppCenter.setEnabled(true) AppCenter.enabled = true
MSAppCenter.isConfigured() AppCenter.is 구성됨
MSAppCenter.isRunningInAppCenterTestCloud() AppCenter.isRunningInAppCenterTestCloud
MSAppCenter.isAppDelegateForwarderEnabled() AppCenter.isAppDelegateForwarderEnabled
MSAppCenter.installId() AppCenter.installId
MSAppCenter.isDebuggerAttached() AppCenter.isDebuggerAttached
MSAppCenter.sdkVersion() AppCenter.sdkVersion
MSAppCenter.setLogUrl("{Log Url}") AppCenter.logUrl = "{Log Url}"
MSAppCenter.setLogLevel(.verbose) AppCenter.logLevel = .verbose (이 설정은 로그의 상세 수준을 설정합니다)
MSAppCenter.setLogHandler(logHandler) AppCenter.logHandler = logHandler
MSAppCenter.SetUserId("{User Id}") AppCenter.userId = "{User Id}"
MSAppCenter.setCountryCode("{Country Code}") AppCenter.countryCode = "{국가 코드}"
MSAppCenter.setAppSecret("{App Secret}") AppCenter.appSecret = "{App Secret}"
MSAppCenter.setString("value", forKey: "key") AppCenter.setString("value", for: "key")
MSServiceAbstract.isAppSecretRequired() ServiceAbstract.isAppSecretRequired
MSAppCenter.addChannelUnitWithConfiguration(구성) AppCenter.addChannelUnit(구성으로:설정)
MSAppCenter.configureWithAppSecret("{App Secret}") AppCenter.configure(withAppSecret:"{App Secret}")
MSAppCenter.start("{App Secret}", withServices: [MSAnalytics.self]) AppCenter.start(withAppSecret: "{App Secret}", 서비스: [Analytics.self])
MSAppCenter.startWithServices([MSAnalytics.self, MSCrashes.self]) AppCenter.start(services: [Analytics.self, Crashes.self])
MSAppCenter.startFromLibraryWithServices([MSAnalytics.self]) AppCenter.startFromLibrary(services: [Analytics.self]) ")
App Center Analytics 아래에 4.0.0 App Center Analytics 4.0.0+
MSAnalytics.isEnabled() 애널리틱스.활성화됨
MSAnalytics.setEnabled(true) Analytics.활성화됨 = true
MSAnalytics.setTransmissionInterval(600) (전송 간격을 600초로 설정하는 함수) Analytics.transmissionInterval = 600
App Center가 더 낮게 충돌합니다. 4.0.0 App Center 오류 4.0.0+
MSCrashes.isEnabled() Crashes.enabled
MSCrashes.setEnabled(true) 충돌.사용됨 = 참
MSCrashes.setDelegate(대리자) Crashes.delegate = 대리자
MSCrashes.hasCrashedInLastSession() Crashes.hasCrashedInLastSession (최근 세션에서 충돌 발생 여부)
MSCrashes.이전 세션에서 메모리 경고를 수신했습니다() Crashes.hasReceivedMemoryWarningInLastSession
MSErrorReport.isAppKill() ErrorReport.isAppKill (애플리케이션 종료 오류 보고서)
MSCrashes.lastSessionCrashReport() 충돌.지난세션충돌보고서
MSCrashes.setAutomaticProcessing(true) (자동 처리를 설정합니다) Crashes.automaticProcessing = true
MS 래퍼 충돌 도우미.getCrashHandlerSetupDelegate WrapperCrashesHelper.crashHandlerSetupDelegate
MSWrapperCrashesHelper.setCrashHandlerSetupDelegate(대리자) WrapperCrashesHelper.crashHandlerSetupDelegate = 델리게이트
MSCrashes.setUserConfirmationHandler(handler) Crashes.userConfirmationHandler = handler # 사용자 확인 처리기 설정
App Center 하위 배포 4.0.0 App Center 배포 서비스 4.0.0+
MSDistribute.isEnabled() Distribute.enabled
MSDistribute.setEnabled(true) Distribute.enabled = 참
MSDistribute.setDelegate(delegate) Distribute.delegate = 대리자
MSDistribute.setApiUrl("{API URL}") Distribute.apiUrl = "{API URL}"
MSDistribute.setInstallUrl("{Install URL}") Distribute.installUrl = "{Install URL}"
MSDistribute.isMandatoryUpdate (필수 업데이트 여부를 확인하는 코드) 분배.필수업데이트

CrashesDelegate의 변경 내용

App Center SDK를 4.0.0 및 그 이상으로 업데이트하기 전에

func crashes(_ crashes: MSCrashes!, shouldProcessErrorReport errorReport: MSErrorReport!) -> Bool

func crashes(_ crashes: MSCrashes!, willSend errorReport: MSErrorReport!)

func crashes(_ crashes: MSCrashes!, didSucceedSending errorReport: MSErrorReport!)

func crashes(_ crashes: MSCrashes!, didFailSending errorReport: MSErrorReport!, withError error: Error!)

func attachments(with crashes: MSCrashes, for errorReport: MSErrorReport) -> [MSErrorAttachmentLog]

App Center SDK를 4.0.0 이상으로 업데이트한 후

func crashes(_ crashes: Crashes, shouldProcess errorReport: ErrorReport) -> Bool

func crashes(_ crashes: Crashes, willSend errorReport: ErrorReport)

func crashes(_ crashes: Crashes, didSucceedSending errorReport: ErrorReport)

func crashes(_ crashes: Crashes, didFailSending errorReport: ErrorReport, withError error: Error)

func attachments(with crashes: Crashes, for errorReport: ErrorReport) -> [ErrorAttachmentLog]

DistributeDelegate 업데이트 내용

App Center SDK를 4.0.0 및 그 이상으로 업데이트하기 전에

func distribute(_ distribute: MSDistribute!, releaseAvailableWith details: MSReleaseDetails!) -> Bool

App Center SDK를 4.0.0 이상으로 업데이트한 후

  func distribute(_ distribute: Distribute, releaseAvailableWith details: ReleaseDetails) -> Bool