Training
Learning path
Use advance techniques in canvas apps to perform custom updates and optimization - Training
Use advance techniques in canvas apps to perform custom updates and optimization
This browser is no longer supported.
Upgrade to Microsoft Edge to take advantage of the latest features, security updates, and technical support.
Important
Visual Studio App Center is scheduled for retirement on March 31, 2025. While you can continue to use Visual Studio App Center until it is fully retired, there are several recommended alternatives that you may consider migrating to.
To avoid a naming conflict with classes in Apple's private frameworks, SDK now uses MSAC
prefix instead of MS
which changes the SDK API.
Swift API has now a more swifty style, and all classes should be used without a prefix, e.g. AppCenter
. There are also changes in functions and properties naming based on Apple Swift best practices.
First, update the App Center SDK by using one of the dependency managers.
The fastest and the most convenient way to update the App Center SDK API is to use autocorrect. After the replacement, you should get the result as shown below.
Before updating App Center SDK to 4.0.0
and higher.
[MSAppCenter start:@"{Your App Secret}" withServices:@[[MSAnalytics class], [MSCrashes class]]];
MSAppCenter.start("{Your App Secret}", withServices: [MSAnalytics.self, MSCrashes.self])
After updating App Center SDK to 4.0.0
and higher.
[MSACAppCenter start:@"{Your App Secret}" withServices:@[[MSACAnalytics class], [MSACCrashes class]]];
AppCenter.start(withAppSecret: "{Your App Secret}", services: [Analytics.self, Crashes.self])
In addition, the getter [MSACWrapperCrashesHelper getCrashHandlerSetupDelegate]
is now deprecated, please use [MSACWrapperCrashesHelper crashHandlerSetupDelegate]
instead.
The following tables show the APIs that have been renamed.
App Center Core lower 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 | .warning |
MSLogLevelInfo | MSACLogLevelInfo | .info |
MSLogLevelAssert | MSACLogLevelAssert | .assert |
MSLogHandler | MSACLogHandler | LogHandler |
MSLogMessageProvider | MSACLogMessageProvider | LogMessageProvider |
App Center Analytics lower 4.0.0 |
App Center Analytics 4.0.0 + (ObjC) |
App Center Alanlytics 4.0.0 + (Swift) |
---|---|---|
MSAnalytics | MSACAnalytics | Analytics |
MSFlags | MSACFlags | Flags |
MSFlagsNormal | MSACFlagsNormal | Flags.normal |
MSFlagsCritical | MSACFlagsCritical | .critical |
MSFlagsDefault | MSACFlagsDefault | .default |
MSEventProperties | MSACEventProperties | EventProperties |
App Center Crashes lower 4.0.0 |
App Center Crashes 4.0.0 + (ObjC) |
App Center Crashes 4.0.0 + (Swift) |
---|---|---|
MSCrashes | MSACCrashes | Crashes |
MSCrashesDelegate | MSACCrashesDelegate | CrashesDelegate |
MSErrorReport | MSACErrorReport | ErrorReport |
MSErrorAttachmentLog | MSACErrorAttachmentLog | ErrorAttachmentLog |
MSUserConfirmationDontSend | MSACUserConfirmationDontSend | UserConfirmation.dontSend |
MSUserConfirmationSend | MSACUserConfirmationSend | .send |
MSUserConfirmationAlways | MSACUserConfirmationAlways | .always |
MSUserConfirmationHandler | MSACUserConfirmationHandler | UserConfirmationHandler |
App Center Distribute lower 4.0.0 |
App Center Distribute 4.0.0 + (ObjC) |
App Center Distribute 4.0.0 + (Swift) |
---|---|---|
MSDistribute | MSACDistribute | Distribute |
MSDistributeDelegate | MSACDistributeDelegate | DistributeDelegate |
MSCrashHandlerSetupDelegate | MSACCrashHandlerSetupDelegate | CrashHandlerSetupDelegate |
MSReleaseDetails | MSACReleaseDetails | ReleaseDetails |
MSUpdateAction | MSACUpdateAction | UpdateAction |
MSUpdateActionUpdate | MSACUpdateActionUpdate | UpdateAction.update |
MSUpdateActionPostpone | MSACUpdateActionPostpone | .postpone |
MSUpdateTrack | MSACUpdateTrack | UpdateTrack |
MSUpdateTrackPublic | MSACUpdateTrackPublic | UpdateTrack.public |
MSUpdateTrackPrivate | MSACUpdateTrackPrivate | .private |
App Center Core lower 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() | ServiceAbstract.isAppSecretRequired |
MSAppCenter.addChannelUnitWithConfiguration(configuration) | 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(services: [Analytics.self, Crashes.self]) |
MSAppCenter.startFromLibraryWithServices([MSAnalytics.self]) | AppCenter.startFromLibrary(services: [Analytics.self]) ") |
App Center Analytics lower 4.0.0 |
App Center Analytics 4.0.0 + |
---|---|
MSAnalytics.isEnabled() | Analytics.enabled |
MSAnalytics.setEnabled(true) | Analytics.enabled = true |
MSAnalytics.setTransmissionInterval(600) | Analytics.transmissionInterval = 600 |
App Center Crashes lower 4.0.0 |
App Center Crashes 4.0.0 + |
---|---|
MSCrashes.isEnabled() | Crashes.enabled |
MSCrashes.setEnabled(true) | Crashes.enabled = true |
MSCrashes.setDelegate(delegate) | Crashes.delegate = delegate |
MSCrashes.hasCrashedInLastSession() | Crashes.hasCrashedInLastSession |
MSCrashes.hasReceivedMemoryWarningInLastSession() | Crashes.hasReceivedMemoryWarningInLastSession |
MSErrorReport.isAppKill() | ErrorReport.isAppKill |
MSCrashes.lastSessionCrashReport() | Crashes.lastSessionCrashReport |
MSCrashes.setAutomaticProcessing(true) | Crashes.automaticProcessing = true |
MSWrapperCrashesHelper.getCrashHandlerSetupDelegate | WrapperCrashesHelper.crashHandlerSetupDelegate |
MSWrapperCrashesHelper.setCrashHandlerSetupDelegate(delegate) | WrapperCrashesHelper.crashHandlerSetupDelegate = delegate |
MSCrashes.setUserConfirmationHandler(handler) | Crashes.userConfirmationHandler = handler |
App Center Distribute lower 4.0.0 |
App Center Distribute 4.0.0 + |
---|---|
MSDistribute.isEnabled() | Distribute.enabled |
MSDistribute.setEnabled(true) | Distribute.enabled = true |
MSDistribute.setDelegate(delegate) | Distribute.delegate = delegate |
MSDistribute.setApiUrl("{API URL}") | Distribute.apiUrl = "{API URL}" |
MSDistribute.setInstallUrl("{Install URL}") | Distribute.installUrl = "{Instal URL}" |
MSDistribute.isMandatoryUpdate | Distribute.mandatoryUpdate |
Before updating App Center SDK to 4.0.0
and higher.
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]
After updating App Center SDK to 4.0.0
and higher.
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]
Before updating App Center SDK to 4.0.0
and higher.
func distribute(_ distribute: MSDistribute!, releaseAvailableWith details: MSReleaseDetails!) -> Bool
After updating App Center SDK to 4.0.0
and higher.
func distribute(_ distribute: Distribute, releaseAvailableWith details: ReleaseDetails) -> Bool
Training
Learning path
Use advance techniques in canvas apps to perform custom updates and optimization - Training
Use advance techniques in canvas apps to perform custom updates and optimization
Documentation
App Center Analytics for iOS - Visual Studio App Center
App Center Analytics for iOS
Get Started with iOS - Visual Studio App Center
Get started with iOS
Data Collected by App Center SDKs - Visual Studio App Center
The required and optional data sent to App Center by the SDK.