What's New in AppCode 2022.2

AppCode 2022.2 helps you analyze the structure of your application by generating UML class diagrams for Objective-C and Swift. It also improves code documentation, generation, and formatting, and is aligned with the latest Xcode versions and new Swift language features. The Kotlin Multiplatform Mobile plugin for AppCode expands the variety of the supported projects to help you develop applications for Android and iOS more productively.

UML class diagrams

UML class diagrams

AppCode lets you generate UML diagrams for Objective-C and Swift. The diagrams help you analyze the structure of your application by showing types, along with their connections, methods, and fields.

Learn more.

Swift and Objective-C language support

Concurrency interoperability with Objective-C

Concurrency interoperability with Objective-C

A set of features added in Swift 5.5 for concurrency interoperability with Objective-C are now supported in AppCode 2022.2. From the user’s perspective, this means:

  • Code resolve in Swift for Objective-C asynchronous functions works correctly.
  • Support is available for actor interoperability with Objective-C.
  • Various Objective-C attributes like _Nullable_result and __attribute__((swift_async_error(...))) are handled correctly.
Existential any

Existential any

AppCode 2022.2 comes with support for existential any from Swift 5.6. This includes:

  • Correct code parsing and type checking.
  • Code completion and code generation.
  • Changes to the code formatter.

There's now enhanced modules handling in AppCode 2022.2:

  • References to extern modules are now resolved correctly.
  • Several modules in the extern module map are now supported.
  • Modules marked as unsupported in Swift are now excluded from code resolve and completion.

Code documentation

AppCode 2022.2 improves code documentation rendering. It removes incorrect formatting, fixes content ordering, no longer loses data, and removes redundant spaces and empty lines.

Code highlighting in the documentation popup

Code highlighting in the documentation popup

AppCode 2022.2 now applies basic syntax highlighting when showing documentation comments in the Quick Documentation popup or in reader mode.

Code generation for Swift actors

Code generation for Swift actors

AppCode 2022.2 can generate initializers for Swift actors.

Code generation for Swift actors

Actor-isolated properties are no longer suggested when auto-generating equals and hash in an actor’s extension.

Inspection settings

Inspection settings

The inspection settings in Preferences | Editor | Inspections now visualize the highlighting style. When you want to change how an inspection appears in the editor, you can set it up using the new Highlighting in editor drop-down menu, which conveniently displays all available highlighting styles.

Kotlin Multiplatform Mobile plugin

KMM plugin

The Kotlin Multiplatform Mobile (KMM) plugin for AppCode helps you develop applications for Android and iOS using the unified Gradle project model. The new update expands the variety of the supported projects.

Previously, AppCode only worked with CocoaPods KMM projects. In this version, projects with the KMM framework attached via the :<kmm_library_name>:embedAndSignAppleFrameworkForXcode Gradle task are also supported.

Either approach will make the cross-resolve from Swift to Kotlin available for the linked KMM libraries. The unified project view for such projects correctly displays both Gradle and Xcode projects in one common tree.