重要
Visual Studio App Center 于 2025 年 3 月 31 日停用,但分析和诊断功能除外,这些功能将继续受支持,直到 2026 年 6 月 30 日。 了解详细信息。
为了避免与 Apple 专用框架中的类发生命名冲突,SDK 现在使用 MSAC 前缀而不是 MS 更改 SDK API。
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。
应用中心核心较低4.0.0 |
App Center Core 4.0.0+ (ObjC) |
App Center Core 4.0.0+ (Swift) |
|---|---|---|
| MSAppCenter | MSACAppCenter | AppCenter |
| MSLogLevel | MSACLogLevel | LogLevel |
| 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 Alanlytics 4.0.0+ (Swift) |
|---|---|---|
| MSAnalytics | MSACAnalytics | Analytics |
| MSFlags | MSACFlags | 旗帜 |
| MSFlagsNormal | MSACFlagsNormal | 标志.正常 |
| MSFlagsCritical | MSAC标志关键性 | 。危急 |
| MSFlagsDefault | MSACFlags默认值 | 默认 |
| MSEventProperties | MSACEventProperties | EventProperties |
App Center 崩溃次数减少 4.0.0 |
App Center 崩溃 4.0.0+ (ObjC) |
App Center 崩溃 4.0.0+ (Swift) |
|---|---|---|
| MSCrashes | MSAC 崩溃 | 故障 |
| MSCrashesDelegate | MSACCrashesDelegate | CrashesDelegate |
| MSErrorReport | MSACErrorReport | 错误报告 |
| MSErrorAttachmentLog | MSACErrorAttachmentLog | 错误附件日志 |
| 用户确认不发送 | 不发送用户确认MSAC | 用户确认.不发送 |
| MS用户确认发送 | MSACUserConfirmationSend | 。发送 |
| MSUserConfirmationAlways | MSACUserConfirmationAlways | 。总是 |
| MSUserConfirmationHandler (用户确认处理程序) | MSAC用户确认处理程序 | UserConfirmationHandler |
App Center 分发 lower 4.0.0 |
App Center Distribute 4.0.0+ (ObjC) |
App Center Distribute 4.0.0+ [Swift] |
|---|---|---|
| MSDistribute | MSACDistribute | 分发 |
| MSDistributeDelegate | MSACDistributeDelegate | DistributeDelegate |
| MSCrashHandlerSetupDelegate | MSACCrashHandlerSetupDelegate | CrashHandlerSetupDelegate |
| MSReleaseDetails | MSACReleaseDetails | 发布详情 |
| MSUpdateAction | MSACUpdateAction | UpdateAction |
| MSUpdateActionUpdate | MSAC更新操作更新 | UpdateAction.update |
| 微软更新操作推迟 | 推迟更新操作 | .推迟 |
| MSUpdateTrack | MSACUpdateTrack | UpdateTrack |
| MSUpdateTrackPublic | MSACUpdateTrackPublic | UpdateTrack.public |
| MSUpdateTrackPrivate | MSACUpdateTrackPrivate | 私人 |
Swift API 更改
应用中心核心较低4.0.0 |
App Center Core 4.0.0+ |
|---|---|
| MSAppCenter.isEnabled() | AppCenter.enabled |
| MSAppCenter.setEnabled(true) | AppCenter.enabled = true |
| MSAppCenter.isConfigured() | AppCenter.isConfigured |
| 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 = “{Country Code}” |
| MSAppCenter.setAppSecret(“{App Secret}”) | AppCenter.appSecret = “{App Secret}” |
| MSAppCenter.setString(“value”, forKey: “key”) | AppCenter.setString(“value”, for: “key”) |
| MSServiceAbstract.isAppSecretRequired() | 服务概览.是否需要应用密钥 |
| MSAppCenter.addChannelUnitWithConfiguration(配置) | AppCenter.addChannelUnit(withConfiguration:configuration) |
| MSAppCenter.configureWithAppSecret(“{App Secret}”) | AppCenter.configure(withAppSecret:“{App Secret}”) |
| MSAppCenter.start(“{App Secret}”, withServices: [MSAnalytics.self]) | AppCenter.start(withAppSecret: “{App Secret}”, services: [Analytics.self]) |
| MSAppCenter.startWithServices([MSAnalytics.self, MSCrashes.self]) | AppCenter.start(服务:[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() | Analytics.enabled |
| MSAnalytics.setEnabled(true) | Analytics.enabled = true # 此行代码用于启用分析功能 |
| MSAnalytics.setTransmissionInterval(600) | Analytics.传输间隔时间 = 600 |
App Center 崩溃次数减少 4.0.0 |
App Center 崩溃 4.0.0+ |
|---|---|
| MSCrashes.isEnabled() | 崩溃.启用 |
| MSCrashes.setEnabled(true) | Crashes.enabled = true(崩溃.启用 = true) |
| MSCrashes.setDelegate(delegate) | Crashes.delegate = 委托 |
| MSCrashes.hasCrashedInLastSession() | Crashes.hasCrashedInLastSession # 在上一个会话中是否崩溃 |
| MSCrashes.hasReceivedMemoryWarningInLastSession(查询上次会话中是否收到内存警告) | Crashes.上一次会话中是否收到内存警告 |
| MSErrorReport.isAppKill() | ErrorReport.isAppKill |
| MSCrashes.lastSessionCrashReport() | 崩溃.上一次会话崩溃报告 |
| MSCrashes.setAutomaticProcessing(true) | Crashes.automaticProcessing = true |
| MSWrapperCrashesHelper.getCrashHandlerSetupDelegate | Wrapper CrashHelper.crashHandlerSetupDelegate |
| MSWrapperCrashesHelper.setCrashHandlerSetupDelegate(delegate) | WrapperCrashesHelper.crashHandlerSetupDelegate = delegate |
| MSCrashes.setUserConfirmationHandler(handler) | Crashes.userConfirmationHandler = handler |
App Center 分发 lower 4.0.0 |
App Center Distribut 4.0.0+ |
|---|---|
| MSDistribute.isEnabled() | 分发.已启用 |
| MSDistribute.setEnabled(true) | Distribute.enabled = true (启用分发) |
| MSDistribute.setDelegate(delegate) | Distribute.delegate = 委托 |
| MSDistribute.setApiUrl(“{API URL}”) | Distribute.apiUrl = “{API URL}” |
| MSDistribute.setInstallUrl(“{Install URL}”) | Distribute.installUrl = “{Install URL}” |
| MSDistribute.isMandatoryUpdate | "Distribute.mandatoryUpdate" |
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]
DistributDelegate 更改
在更新 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