Skip to content

Optional setup

The AffiseSettings builder exposes several fluent setters that can be chained between Affise.settings(...) and .start(...) (AffiseAttributionLib/Classes/settings/AffiseSettings.swift:5). All setters are @objc public and return AffiseSettings, so they can be called in any order.

| Method | Purpose | Source | |---|---|---| | setProduction(_ production: Bool) | Disable production mode to enable debug methods. | AffiseSettings.swift:31-35 | | setPartParamName(_ partParamName: String) | Set part_param_name. | AffiseSettings.swift:40-44 | | setPartParamNameToken(_ partParamNameToken: String) | Set part_param_name_token. | AffiseSettings.swift:49-53 | | setAppToken(_ appToken: String) | Override the app token. | AffiseSettings.swift:58-62 | | setDomain(_ domain: String) | Use a custom backend domain. | AffiseSettings.swift:68-72 | | setOnInitSuccess(_:) | Callback fired on successful SDK initialization. | AffiseSettings.swift:77-81 | | setOnInitError(_:) | Callback fired if SDK initialization fails. | AffiseSettings.swift:86-90 | | setDisableModules(_:) (Swift [AffiseModules]) | Exclude modules at start. | AffiseSettings.swift:117-120 | | setDisableModules(_:) (Obj-C bridge Array<Int>) | Obj-C variant. | AffiseSettings.swift:112-115 | | start(app:launchOptions:) | Terminal — start the SDK. | AffiseSettings.swift:141-151 |

Affise
.settings(
affiseAppId: "Your appId",
secretKey: "Your secretKey"
)
.setProduction(false) //To enable debug methods set Production to false
.start(app: application, launchOptions: launchOptions)

Verbatim from the README:

Affise
.settings(
affiseAppId: "Your appId",
secretKey: "Your secretKey"
)
.setDomain("https://YourCustomDomain") // Set custom domain
.start(app: application, launchOptions: launchOptions)

Typealiases:

  • public typealias OnInitSuccessHandler = () -> VoidAffiseAttributionLib/Classes/settings/OnInitSuccessHandler.swift:3
  • public typealias OnInitErrorHandler = (_ e: Error) -> VoidAffiseAttributionLib/Classes/settings/OnInitErrorHandler.swift:3

Verbatim:

Affise
.settings(
affiseAppId: "Your appId",
secretKey: "Your secretKey"
)
.setOnInitSuccess {
// Called if library initialization succeeded
debugPrint("Affise: init success")
}
.setOnInitError { error in
// Called if library initialization failed
debugPrint("Affise: init error \(error)")
}
.start(app: application, launchOptions: launchOptions)

Success handler is fired in AffiseInternal.start (AffiseAttributionLib/Classes/AffiseInternal.swift:17); error handler at lines 19 and 22.

AffiseSettings.setDisableModules(_ disableModules: [AffiseModules]) (AffiseAttributionLib/Classes/settings/AffiseSettings.swift:117-120) accepts the AffiseModules enum (cases .AdService, .Advertising, .AppsFlyer, .Google, .Link, .Persistent, .Status, .Subscription, .TikTok; .Google added in 1.7.8).

Verbatim:

Affise
.settings(
affiseAppId: "Your appId",
secretKey: "Your secretKey"
)
.setDisableModules([
// Exclude modules from start
.Advertising,
.Subscription,
])
.start(app: application, launchOptions: launchOptions) // Start Affise SDK

Query which modules are currently linked at runtime via Affise.Module:

Affise.Module.getModulesInstalled()
  • Swift: public func getModulesInstalled() -> [AffiseModules]AffiseAttributionLib/Classes/modules/attribution/AffiseAttributionModule.swift:45-47.
  • Obj-C: @objc public func getModulesInstalledObjc() -> [String] — same file, lines 38-40.

setPartParamName(...), setPartParamNameToken(...), and setAppToken(...) are fluent setters at AffiseSettings.swift:40, 49, and 58 respectively. They configure partner-parameter naming and override the app token.