Search code examples
iosxcodekotlingradlekotlin-multiplatform

Maps custom Xcode configuration to NativeBuildType in Kotlin Multi-platform


I am reading cocoapods and I see this two lines in gradle file. Can someone explain me in details. What is the purpose of this lines?

xcodeConfigurationToNativeBuildType["CUSTOM_DEBUG"] = NativeBuildType.DEBUG
xcodeConfigurationToNativeBuildType["CUSTOM_RELEASE"] = NativeBuildType.RELEASE

enter image description here


Solution

  • By default, the iOS app has two configurations: debug and release.

    You can add more configurations as shown here. Using different configurations, you can create different versions of your app: each build parameter in Xcode can have different values depending on the configuration, including user-defined.

    For example, it is useful to have an AppStore configuration and a release configuration for local testing, which can use different endpoints, api keys, etc.

    xcodeConfigurationToNativeBuildType lets the multiplatform kotlin plugin know which build type a particular custom configuration should be built with - the debug configuration is slower, but gives more debugging options.