NexaGuard
  1. Mobile-SDKs
NexaGuard
  • Getting-Started
    • NexaGuard Developer Documentation
    • Quickstart (5 to 10 Minutes)
    • Documentation Overview
    • Concepts and Glossary
  • Compliance-and-Standards
    • Compliance Overview
    • IAB TCF v2.3 Support
    • Google Consent Mode v2 Validation
    • TCF API Validation
    • Audit Checklist (Pre-Launch)
  • Web-and-CMS-Integrations
    • NexaGuard CMP SDK – Web & GTM Setup
    • Integrate NexaGuard CMP with Webflow and Wix
    • Integrate NexaGuard CMP with WordPress
    • Integrate NexaGuard CMP with Drupal
    • Integrate NexaGuard CMP with Shopify
  • Mobile-SDKs
    • NexaGuard CMP SDK - iOS Setup
    • iOS SDK API Reference
    • NexaGuard CMP SDK - Android Setup
    • Android SDK API Reference
    • App Attribution Partner (AAP) Integrations
  • Developer-Reference
    • Web JS API Reference
    • Consent Event Schema
    • Deployment and Environments
    • NexaGuard Debug Tool
    • Troubleshooting Playbook
    • Performance and Best Practices
    • Accessibility and UX Guidelines
    • Localization Workflow
    • Migration Guide
  • Security-and-Privacy
    • Security Overview
    • Privacy Architecture
    • Data and Logging Transparency
    • Subprocessors
    • CSP and Network Allowlist
  • Enterprise-and-Legal
    • DPA and Legal Pack
    • RFP Feature Matrix
    • Status and Reliability
    • Support and Escalation
    • NexaGuard CMP SDK – Commercial Licence
  • Operations
    • Changelog and Version Policy
  1. Mobile-SDKs

NexaGuard CMP SDK - iOS Setup

Last updated: February 21, 2026
Packagepod 'NexaGuardSDK', '~> 1.0'
MinimumiOS 14 · Swift 5.10 · Xcode 16
Footprintapprox. 200 kB zipped xcframework

1 Install via CocoaPods#

Add the dependency in Podfile.
Do not run pod 'NexaGuardSDK', 'x.y.z' directly in terminal.
If a just-published version is not yet visible via CocoaPods CDN, use temporary git tag pinning:
Xcode 15/16 note: SDK 1.0.1 may trigger sandbox-copy build errors.
Resolved in 1.0.2+.
If required, temporarily set:
Build Settings -> ENABLE_USER_SCRIPT_SANDBOXING = NO

2 Initialize and Display the Banner (SwiftUI)#

3 Public API Summary#

MethodDescription
initialize(settingsId:completion:)Loads configuration, vendor list (GVL), and initializes consent state.
showBanner(force: Bool = false)Displays banner; force: true reopens even if consent exists.
Consent actions and TC-string writing are handled internally by SDK UI flows.

4 Consent Mode: Basic vs. Advanced#

NexaGuard CMP fully supports Google Consent Mode.

Basic Mode (Default)#

Google analytics/ads SDKs remain blocked until user consent.
No advertising or analytics signals are transmitted before user action.
Recommended for strict regulatory environments.

Advanced Mode#

Google SDKs initialize immediately.
Limited, cookieless signals may be transmitted until user decision.
Consent state automatically updates SDK behavior post-selection.
Important: Consent Mode is a technical mechanism.
Regulatory compliance remains the responsibility of the customer's implementation and configuration decisions.

5 IAB TCF v2.3 Support#

NexaGuard CMP iOS implementation supports IAB TCF v2.3, including:
TC string generation and storage
Purpose and vendor consent tracking
Disclosed Vendors segment (VendorsDisclosed)
Allowed Vendors segment (VendorsAllowed)
Compatibility with downstream SDK consent routing
If TCF is enabled in your configuration, an active TC string is generated and stored.
The SDK mirrors this value to standard IAB storage for ecosystem compatibility.

6 Quickstart Verification Checklist#

Before production release:
1.
Initialize SDK once with production Settings ID.
2.
Confirm banner renders on first app open.
3.
Confirm reopen action (showBanner(force: true)) works.
4.
Confirm consent updates propagate to integrated analytics or attribution SDKs.
5.
Capture QA screenshots or screen recordings for audit records.

7 Performance Considerations#

Initialization should occur once per app lifecycle.
SDK footprint is minimal and does not significantly impact cold start.
Consent updates are asynchronous and non-blocking.

8 Rollback Procedure#

If rollback is required:
1.
Disable feature flag or revert app version.
2.
Remove NexaGuardSDK pod dependency.
3.
Rebuild and validate no CMP initialization calls remain.
4.
Confirm analytics SDK behavior is restored to pre-CMP configuration.

9 Logging Behavior#

NxgLog.enabled controls NexaGuard SDK logs only.
Third-party/system logs (for example Firebase/WebKit/network stack) are outside NexaGuard log control.

10 Support#

For integration assistance:
[email protected]
[email protected]
Full documentation: https://developer.nexaguard.com

© 2026 NexaGuard Inc. All rights reserved.
Previous
Integrate NexaGuard CMP with Shopify
Next
iOS SDK API Reference