KiteSsotIosSyncExtension

Apple source sync policy inside kiteSsot { ios { sync { ... } } }.

Writing this block is the opt-in. Its presence is what authorizes the explicit Apple source tasks, and it replaces the old syncIos = true flag.

kiteSsot {
ios {
sync {
targets("iosApp")
sanitizePlist = true
onConflict = PlistConflictPolicy.KEEP

renameSharedModule(from = "OldShared", to = "Shared")
}
}
}

Authorizing is not running. This block starts nothing. An ordinary build still never touches an Apple source file. You run kiteSsotSyncIosConfig, kiteSsotSanitizeIosProject, or kiteSsotSyncIosLogo yourself, and every safety rail still applies: the root dryRun previews instead of writing, the root backups keeps recovery copies, and onConflict decides what happens when an existing plist value disagrees with yours.

Constructors

Link copied to clipboard
constructor()

Properties

Link copied to clipboard
abstract val enabled: Property<Boolean>

Whether the Apple source tasks stay authorized.

Link copied to clipboard
abstract val nonExemptEncryption: Property<Boolean>

Value for ITSAppUsesNonExemptEncryption in Info.plist.

Link copied to clipboard
abstract val onConflict: Property<PlistConflictPolicy>

What to do when an existing Info.plist value differs from the requested value.

Link copied to clipboard
abstract val proMotion: Property<Boolean>

Value for CADisableMinimumFrameDurationOnPhone in Info.plist.

Link copied to clipboard
abstract val sanitizePlist: Property<Boolean>

Whether KiteSSOT maintains its own keys in the source XML Info.plist.

Link copied to clipboard
abstract val targets: ListProperty<String>

The exact Xcode application targets whose build configurations may change.

Functions

Link copied to clipboard

Rename the CocoaPods and Swift module across the Apple sources: from is the name in the files today, to is the name you want.

Link copied to clipboard
fun targets(vararg names: String)

Add Xcode application target names, for example targets("iosApp").