[iOS] 3. API-documentatie
accepteer alles
Accepteert de toestemmingslaag en gedraagt zich hetzelfde wanneer de gebruiker de toestemming accepteert. Deze methode verbruikt één paginaweergave.
parameters
Naam | Type | Beschrijving |
onFinish |
functie | Terugbellen voor het afhandelen van een gebeurtenis met ontvangen toestemming. het wordt gebeld wanneer toestemming is ontvangen en verwerkt. |
Retourneren
Geen retourwaarde.
Voorbeeld
func onFinish() {
print("Notification: New consent was received")
}
// Accept all consent with a callback
cmpConsentTool.acceptAll(onFinish)
controle
Controleert of toestemming van de gebruiker vereist is, en retourneert optioneel gecachte resultaten. Deze methode verbruikt één paginaweergave als isCached
parameter is WAAR en de gecachte toestemming IS verlopen, één paginaweergave als isCached
parameter is FALSE, en geen paginaweergaven als de gecachte toestemming niet is verlopen. De gecachte toestemming is verlopen en wordt elke 24 uur verwijderd.
parameters
Naam | Type | Beschrijving |
onCmpLayerOpen |
functie | Terugbellen wanneer de toestemmingslaag open moet zijn. |
isCached |
Boolean | Indien WAAR, wordt het verzoek in de cache opgeslagen en wordt het antwoord opgeslagen |
Retourneren
Geen retourwaarde.
Voorbeeld
@objc func checkCmpLayer() {
print("Checking need for consent.")
cmpManager?.check(
{
// Callback for when the consent layer needs to be opened
print("Consent layer will open")
self.cmpConsentTool?.openView()
},
isCached: true
)
}
checkAndOpenConsentLayer
Controleert of toestemming van de gebruiker vereist is en opent, indien dit het geval is, de gebruikersinterface van de toestemmingslaag. Deze methode verbruikt één paginaweergave.
parameters
Geen. |
Retourneren
Geen retourwaarde.
Voorbeeld
@objc func checkAndOpenConsentLayerAction() {
cmpManager?.checkAndOpenConsentLayer()
}
toestemmingRequestedToday
Controleert of de toestemmingslaag vandaag is aangevraagd. Deze methode verbruikt geen paginaweergaven.
parameters
Geen. |
Retourneren
WAAR als de toestemming van de gebruiker vandaag al is gevraagd.
Anders ONWAAR.
Voorbeeld
@objc func consentRequestedTodayAction() {
if let calledToday = cmpManager?.consentRequestedToday() {
print("Consent requested today: \(calledToday)")
} else {
print("Failed to retrieve consent request status for today.")
}
}
uitschakelenPurposeList
Schakelt een lijst met doeleinden uit en werkt de gegeven toestemming bij. Deze methode verbruikt één paginaweergave.
parameters
Naam | Type | Beschrijving |
purposes |
reeks | Lijst met doel-ID's die moeten worden uitgeschakeld. |
onFinish |
functie (Optioneel) | Terugbellen voor het afhandelen van een gebeurtenis met ontvangen toestemming. het wordt gebeld wanneer toestemming is ontvangen en verwerkt. |
Retourneren
Geen retourwaarde.
Voorbeeld
func onFinish() {
print("Notification: New consent received")
}
let purposes = ["1", "2"]
// Option with callback
cmpManager?.disablePurposeList(purposes, onFinish: onFinish)
// Option without callback
cmpManager?.disablePurposeList(purposes)
leverancierslijst uitschakelen
Schakelt een lijst met leveranciers uit en werkt de gegeven toestemming bij. Deze methode verbruikt één paginaweergave.
parameters
Naam | Type | Beschrijving |
vendors |
reeks | Lijst met leveranciers-ID's die moeten worden uitgeschakeld. |
onFinish |
functie (Optioneel) | Terugbellen voor het afhandelen van de gebeurtenis 'Toestemming ontvangen'. Het wordt opgeroepen wanneer de toestemming is ontvangen en verwerkt. |
Retourneren
Geen retourwaarde.
Voorbeeld
func onFinish() {
print("Notification: New consent received")
}
let vendors = ["1", "2"]
// Option with callback
cmpManager?.disableVendorList(vendors, onFinish: onFinish)
// Option without callback
cmpManager?.disableVendorList(vendors)
SchakelPurposeList in
Schakelt een lijst met doeleinden in en werkt de gegeven toestemming bij. Deze methode verbruikt één paginaweergave.
parameters
Naam | Type | Beschrijving |
purposes |
reeks | Lijst met doel-ID's die moeten worden ingeschakeld. |
onFinish |
functie (Optioneel) | Terugbellen voor het afhandelen van de gebeurtenis 'Toestemming ontvangen'. Het wordt opgeroepen wanneer de toestemming is ontvangen en verwerkt. |
Retourneren
Geen retourwaarde
Voorbeeld
func onFinish() {
print("Notification: New consent received")
}
let purposes = ["1", "2"]
// Option with callback
cmpManager?.enablePurposeList(purposes, onFinish: onFinish)
// Option without callback
cmpManager?.enablePurposeList(purposes)
leverancierslijst inschakelen
Schakelt een lijst met leveranciers in en werkt de gegeven toestemming bij. Deze methode verbruikt één paginaweergave.
parameters
Naam | Type | Beschrijving |
vendors |
reeks | Lijst met leveranciers-ID's die moeten worden ingeschakeld. |
onFinish |
functie (Optioneel) | Terugbellen voor het afhandelen van de gebeurtenis 'Toestemming ontvangen'. iIk zal worden gebeld wanneer de toestemming is ontvangen en verwerkt. |
Retourneren
Geen retourwaarde.
Voorbeeld
func onFinish() {
print("Notification: New consent received")
}
let vendors = ["1", "2"]
// Option with callback
cmpManager?.enableVendorList(vendors, onFinish: onFinish)
// Option without callback
cmpManager?.enableVendorList(vendors)
exportCmpString
Exporteert de huidige CMP-tekenreeks die de toestemmingsvoorkeuren van de gebruiker vertegenwoordigt. Deze methode wordt op een statische manier benaderd. Deze methode verbruikt geen paginaweergaven.
parameters
Geen. |
Retourneren
De toestemmingsstring.
Voorbeeld
@objc func exportConsentStringAction() {
let exportString = cmpManager.exportCmpString()
print(exportString ?? "No string to export.");
}
GetAllPurposes
Retourneert alle doeleinden-ID's. Deze methode verbruikt geen paginaweergaven.
parameters
Geen. |
Retourneren
Een door komma's gescheiden tekenreeks die ID's voor alle doeleinden bevat.
Voorbeeld
@objc func getAllPurposesAction() {
if let allPurposes = cmpManager?.getAllPurposes() {
print("All purposes: \(allPurposes)")
// Additional actions for getAllPurposes function can be added here
} else {
print("Failed to retrieve all purposes.")
}
}
getAllPurposeList
Retourneert een lijst met alle doel-ID's voor een gegeven CMP. Deze methode verbruikt geen paginaweergaven.
parameters
Geen. |
Retourneren
Een lijst met alle doel-ID's.
Voorbeeld
@objc func getAllPurposeListAction() {
// Action for getAllPurposeList function
if let allPurposes = cmpManager?.getAllPurposesList() {
print("All purposes list: \(allPurposes.joined(separator: ", "))")
} else {
print("Failed to retrieve all purposes list.")
}
}
haalAlleVerkopers
Retourneert alle leveranciers-ID's voor een gegeven CMP. Deze methode verbruikt geen paginaweergaven.
parameters
Geen. |
Retourneren
Een door komma's gescheiden tekenreeks die alle leveranciers-ID's bevat.
Voorbeeld
@objc func getAllVendorsAction() {
if let allPurposes = cmpManager?.getAllVendors() {
print("Printing all Vendors: \(allPurposes)")
} else {
print("Failed to retrieve all vendors.")
}
}
getAllVendorsLijst
Retourneert een lijst met alle leveranciers-ID's voor een gegeven CMP. Deze methode verbruikt geen paginaweergaven.
parameters
Geen. |
Retourneren
Een lijst met alle leveranciers-ID's.
Voorbeeld
@objc func getAllVendorsListAction() {
if let allVendors = cmpManager?.getAllVendorsList() {
print("All vendors list: \(allVendors.joined(separator: ", "))")
} else {
print("Failed to retrieve all vendors list.")
}
}
getConsentString
Retourneert een string met de laatst gegeven toestemming. Deze methode verbruikt geen paginaweergaven.
parameters
Geen. |
Retourneren
Een tekenreeks waarvan de laatste toestemming door de gebruiker is bevestigd.
Voorbeeld
@objc func getAllVendorsListAction() {
if let allVendors = cmpManager?.getAllVendorsList() {
print("All vendors list: \(allVendors.joined(separator: ", "))")
} else {
print("Failed to retrieve all vendors list.")
}
}
getDisabledPurposes
Retourneert alle ID's van uitgeschakelde doeleinden voor een gegeven CMP. Deze methode verbruikt geen paginaweergaven.
parameters
Geen. |
Retourneren
Een door komma's gescheiden tekenreeks met de ID's van alle uitgeschakelde doeleinden.
Voorbeeld
@objc func getDisabledPurposesAction() {
if let disabledPurposes = cmpManager?.getDisabledPurposes() {
print("Disabled purposes: \(disabledPurposes)")
} else {
print("Failed to retrieve disabled purposes.")
}
}
getDisabledVendors
Retourneert alle uitgeschakelde leveranciers-ID's voor een gegeven CMP. Deze methode verbruikt geen paginaweergaven.
parameters
Geen. |
Retourneren
Een door komma's gescheiden tekenreeks met de ID's van alle uitgeschakelde leveranciers.
Voorbeeld
@objc func getDisabledVendorsAction() {
if let disabledVendors = cmpManager?.getDisabledVendors() {
print("Disabled vendors: \(disabledVendors)")
} else {
print("Failed to retrieve disabled vendors.")
}
}
getEnabledPurposes
Retourneert alle ingeschakelde leveranciers-ID's voor een gegeven CMP. Deze methode verbruikt geen paginaweergaven.
parameters
Geen. |
Retourneren
Een door komma's gescheiden tekenreeks met de ID's van alle ingeschakelde leveranciers.
Voorbeeld
@objc func getEnabledVendorsAction() {
if let enabledVendors = cmpManager?.getEnabledVendors() {
print("Enabled vendors: \(enabledVendors)")
} else {
print("Failed to retrieve enabled vendors.")
}
}
getEnabledPurposeList
Retourneert een lijst met alle ingeschakelde doeleinden-ID's voor een gegeven CMP. Deze methode verbruikt geen paginaweergaven.
parameters
Geen. |
Retourneren
Een lijst met de ID's van alle ingeschakelde doeleinden.
Voorbeeld
@objc func getEnabledPurposesAction() {
if let enabledPurposes = cmpManager?.getEnabledPurposes() {
print("Enabled purposes: \(enabledPurposes.joined(separator: ", "))")
} else {
print("Failed to retrieve enabled purposes list.")
}
}
getEnabledVendors
Retourneert alle ingeschakelde leveranciers-ID's voor een gegeven CMP. Deze methode verbruikt geen paginaweergaven.
parameters
Geen. |
Retourneren
Een door komma's gescheiden tekenreeks met de ID's van alle ingeschakelde leveranciers.
Voorbeeld
@objc func getEnabledVendorsAction() {
if let enabledVendors = cmpManager?.getEnabledVendors() {
print("Enabled vendors: \(enabledVendors)")
} else {
print("Failed to retrieve enabled vendors.")
}
}
getEnabledVendorList
Retourneert een lijst met alle ingeschakelde leveranciers-ID's voor een gegeven CMP. Deze methode verbruikt geen paginaweergaven.
parameters
Geen. |
Retourneren
Een lijst met alle ingeschakelde leveranciers-ID's.
Voorbeeld
@objc func getEnabledVendorsAction() {
if let enabledVendors = cmpManager?.getEnabledVendors() {
print("Enabled vendors: \(enabledVendors.joined(separator: ", "))")
} else {
print("Failed to retrieve enabled vendors.")
}
}
getGoogleACString
Haalt de Google-tekenreeks voor aanvullende toestemmings-ID (`addtlConsent`) op die is ingesteld door de consent manager.
Voor meer informatie, kijk op de Technische specificatie voor aanvullende toestemming van Google.
Deze methode verbruikt geen paginaweergaven.
parameters
Geen. |
Retourneren
Een lijst met alle ingeschakelde leveranciers-ID's.
Voorbeeld
@objc func getGoogleConsentStringAction() {
if let googleACString = cmpManager?.getGoogleACString() {
print("Google Additional Consent String: \(googleACString)")
} else {
print("Failed to retrieve Google Additional Consent String.")
}
}
getUSPrivacyString
Haalt de US Privacy String op. Deze US privacy string is een cookie die informatie opslaat over de openbaarmakingen en keuzes die de bezoeker van de website heeft gemaakt met betrekking tot zijn consumentenrechten. Deze methode verbruikt geen paginaweergaven.
parameters
Geen. |
Retourneren
Een string met de Amerikaanse privacygegevens die zijn ingesteld door consentmanager.
Voorbeeld
@objc func getUSPrivacyStringAction() {
if let theUSPrivacyString = cmpManager?.getUSPrivacyString() {
print("US Privacy string contents: \(theUSPrivacyString)")
} else {
print("Failed to retrieve US Privacy string.")
}
}
heeftToestemming
Controleert of de gebruiker al toestemming heeft gegeven. De toestemmingslaag kan de optie hebben om de laag gewoon te sluiten. In dat geval heeft de gebruiker geen toestemming gegeven. Deze methode verbruikt geen paginaweergaven.
parameters
Geen. |
Retourneren
Een string met de Amerikaanse privacygegevens die zijn ingesteld door consentmanager.
Voorbeeld
@objc func getHasConsentAction() {
if let hasConsent = cmpManager?.hasConsent() {
let consentStatus = hasConsent ? "Yes" : "No"
print("Consent provided by the user? \(consentStatus)")
} else {
print("Failed to retrieve user consent.")
}
}
hasPurpose (vanaf versie 2.5.3)
hasPurposeConsent (verouderd)
Controleert of de doel-ID is ingeschakeld op basis van de toestemming van de gebruiker. Deze methode verbruikt geen paginaweergaven.
parameters
Naam | Type | Beschrijving |
purposeId |
Draad | doel-id |
defaultReturn |
Boolean | Waarde die standaard door de methode wordt geretourneerd, als er nog geen toestemming is. Zie onderstaande waarschuwing. |
Retourneren
WAAR als de gebruiker toestemming heeft gegeven voor het opgegeven doel.
Anders ONWAAR.
Houd er rekening mee dat als er om welke reden dan ook sprake is van een slechte of geen internetverbinding op het apparaat of als er geen toestemming is verleend, de waarde die via de defaultReturn
parameter wordt geretourneerd.
De defaultReturn
parameter bestaat niet in versies ouder dan 2.5.3.
Voorbeeld
@objc func getHasPurposeConsentAction() {
if let hasPurposeConsent = cmpManager?.hasPurpose("purposeID", false) {
let consentStatus = hasPurposeConsent ? "Yes" : "No"
print("Purpose has consent provided by the user? \(consentStatus)")
} else {
print("Failed to retrieve user purpose consent.")
}
}
hasVendor (vanaf versie 2.5.3)
hasVendorConsent (verouderd)
Controleert of de leveranciers-ID is ingeschakeld op basis van de toestemming van de gebruiker. Deze methode verbruikt geen paginaweergaven.
parameters
Naam | Type | Beschrijving |
vendorId |
Draad | verkopers ID |
defaultReturn |
Boolean | Waarde die standaard door de methode wordt geretourneerd, als er nog geen toestemming is. Zie onderstaande waarschuwing. |
Retourneren
TRUE als de gebruiker toestemming heeft gegeven aan de opgegeven leverancier.
Anders ONWAAR.
Houd er rekening mee dat als er om welke reden dan ook sprake is van een slechte of geen internetverbinding op het apparaat of als er geen toestemming is verleend, de waarde die via de defaultReturn
parameter wordt geretourneerd.
De defaultReturn
parameter bestaat niet in versies ouder dan 2.5.3.
Voorbeeld
@objc func getHasVendorConsentAction() {
if let hasVendorConsent = cmpManager?.hasVendor("vendorID") {
let consentStatus = hasVendorConsent ? "Yes" : "No"
print("Vendor has consent provided by the user? \(consentStatus)")
} else {
print("Failed to retrieve user vendor consent.")
}
}
importCmpString
Importeert een CMP-tekenreeks die de toestemmingsvoorkeuren van de gebruiker vertegenwoordigt. De string moet AS-IS worden geïnformeerd wanneer deze wordt opgehaald via de exportCmpString()-methodeDeze methode verbruikt één paginaweergave.
parameters
Naam | Type | Beschrijving |
toestemmingString | Draad | String die de toestemming vertegenwoordigt |
voltooiingHandler | functie (optioneel) | Callback-voltooiingshandler naar de methode. |
Retourneren
Geen.
Voorbeeld
let cmpString = "YourConsentStringHere"
// Define the completion handler
let completionHandler: CmpImportCompletionHandler = { error in
if let error = error {
print("Failed to import CMP string: \(error.localizedDescription)")
} else {
print("CMP string imported successfully")
}
}
cmpManager.importCmpString(cmpString, completion: completionHandler)
initialiseren
De functie Initialize initialiseert de toestemmingslaag en controleert automatisch of de gebruiker toestemming nodig heeft of niet. Deze functie opent uiteindelijk de toestemmingslaag en zal interacteren met de Apple Tracking Transparency API om de gebruiker om toestemming te vragen. Deze methode verbruikt één paginaweergave.
parameters
Naam | Type | Beschrijving |
cmpConfig |
CmpConfig | Het CmpConfig-object wordt doorgegeven met de informatie over de appId, Domain, appName en taal (optioneel) |
Retourneren
Het CMPManager-object.
Voorbeeld
// Example of a default implementation of the SDK.
class ViewController: UIViewController {
// Usual implementation of a View Controller
var cmpManager: CMPConsentTool? = nil
override func viewDidLoad() {
super.viewDidLoad()
// Configure your CMP
let cmpConfig: CmpConfig = CmpConfig.shared.setup(
withId: "<YOUR-CONSENTMANAGER-APP-ID>, example: a000aaaa0a",
domain: "<YOUR-CONSENTMANAGER-APP-DOMAIN>, example: delivery.consentmanager.net",
appName: "<YOUR-CONSENTMANAGER-APP-NAME>, example: testApp",
language: "<YOUR-CONSENTMANAGER-APP-LANGUAGE, example: DE");
// You can also determine log levels or ask for Apple's App Tracking Transparency, for example
cmpConfig.logLevel = CmpLogLevel.verbose;
cmpConfig.isAutomaticATTRequest = true;
// Then you pass the cmpConfig to set up and initialize the instance of our SDK
cmpManager = CMPConsentTool(cmpConfig: cmpConfig)
.withErrorListener(onCMPError)
.withCloseListener(onClose)
.withOpenListener(onOpen)
.withOnCMPNotOpenedListener(onCMPNotOpened)
.withOnCmpButtonClickedCallback(onButtonClickedEvent)
.initialize() // This method will trigger the webview loading to collect consent, if necessary
}
}
is toestemming vereist
Controleert of toestemming moet worden gegeven door de huidige app-gebruiker. Deze methode verbruikt geen paginaweergaven.
parameters
Geen. |
Retourneren
TRUE als de gebruiker toestemming moet geven.
Anders ONWAAR.
Voorbeeld
@objc func checkIfConsentIsRequired() {
if let isConsentRequired = cmpConsentTool?.isConsentRequired() {
let consentRequiredStatus = isConsentRequired ? "Yes" : "No"
print("Is user consent required? \(consentRequiredStatus)")
} else {
print("Failed to determine if user consent is required.")
}
}
openBekijk
Opent geforceerd de CMP-toestemmingslaag webview. Deze methode verbruikt één paginaweergave.
parameters
Geen. |
Retourneren
Geen retourwaarde.
Voorbeeld
self.cmpConsentTool?.openView()
weigerAlles
Verwerpt de toestemmingslaag en gedraagt zich hetzelfde wanneer de gebruiker de toestemming niet heeft geaccepteerd. Deze methode verbruikt één paginaweergave.
parameters
Naam | Type | Beschrijving |
onFinish |
functie | Optioneel. Terugbellen voor het afhandelen van de gebeurtenis 'Toestemming ontvangen'. het wordt opgeroepen wanneer toestemming is ontvangen en verwerkt. |
Retourneren
Geen retourwaarde
Voorbeeld
func onFinish() {
print("Notification: New consent has been received with a Reject All response.")
}
// Reject all consent with a callback
cmpManager.rejectAll(onFinish)
opnieuw in te stellen
Reset alle eigenschappen naar standaardwaarden. Deze methode verbruikt geen paginaweergaven.
parameters
Geen. |
Retourneren
Geen retourwaarde.
Voorbeeld
CMPManager.reset()
metCloseListener
Voegt een goede luisteraar toe om meldingen te ontvangen wanneer de toestemmingslaag wordt gesloten.
parameters
Naam | Type | Beschrijving |
closeListener |
functie | Callback die wordt aangeroepen wanneer de toestemmingslaag wordt gesloten. |
Retourneren
CMPConsentTool
Voorbeeld
func onClose() {
print("APP: CLOSED")
// Add custom business logic here
}
// Initialize cmpManager with configuration and close listener
cmpManager = CMPConsentTool(cmpConfig: cmpConfig, viewController: self)
.withCloseListener(onClose)
met OpenListener
Voegt een open luisteraar toe om meldingen te ontvangen wanneer de toestemmingslaag wordt geopend.
parameters
Naam | Type | Beschrijving |
openListener |
functie | Callback die wordt aangeroepen wanneer de toestemmingslaag wordt geopend |
Retourneren
CMPConsentTool
Voorbeeld
func onOpen() {
print("APP: OPENED")
// Add custom business logic here
}
// Initialize cmpManager with configuration and open listener
cmpManager = CMPConsentTool(cmpConfig: cmpConfig, viewController: self)
.withCloseListener(onOpen)
metErrorListener
Voegt een foutlistener toe om meldingen te ontvangen wanneer er een fout is opgetreden.
parameters
Naam | Type | Beschrijving |
errorListener |
functie | Terugbellen om actie toe te voegen als er een fout is opgetreden. |
Retourneren
CMPConsentTool
Voorbeeld
func onCMPError(type: CmpErrorType, message: String?) {
if let errorMessage = message {
print(errorMessage)
} else {
print("An error occurred.")
}
switch type {
case .networkError:
print("Network error")
case .timeoutError:
print("Timeout error")
case .consentDataReadWriteError:
print("Consent data read/write error")
case .unknownError:
print("Unknown error")
@unknown default:
print("Unexpected error")
}
}
// Initialize cmpManager with configuration and error listener
cmpManager = CMPConsentTool(cmpConfig: cmpConfig, viewController: self)
.withErrorListener(onCMPError)
metOnCMPNotOpenedListener
Voegt een Cmp niet geopende callback toe om een melding te krijgen wanneer de toestemmingslaag niet wordt geopend. De meest voorkomende reden is dat de gebruiker al toestemming heeft gegeven.
parameters
Naam | Type | Beschrijving |
openListener |
functie | Callback die wordt aangeroepen als de toestemmingslaag niet is geopend. |
Retourneren
CMPConsentTool
Voorbeeld
func onCMPNotOpened() {
print("CMP: NOT OPENED")
// Add custom business logic here
}
// Initialize cmpConsentTool with configuration and CMP not opened listener
cmpManager = CMPConsentTool(cmpConfig: cmpConfig, viewController: self)
.withOnCMPNotOpenedListener(onCMPNotOpened)
withOnCmpButtonClickedCallback
Stelt een callback in om meldingen te ontvangen wanneer de gebruiker op een knop klikt om de toestemmingslaag te sluiten.
parameters
Naam | Type | Beschrijving |
openListener |
functie | Terugbellen die wordt aangeroepen waarbij de CmpButtonEvent aangeeft welke knop is ingedrukt. |
Retourneren
CMPConsentTool
Voorbeeld
func onButtonClickedEvent(event: CmpButtonEvent) {
switch event {
case .acceptAll:
print("User accepted all.")
case .rejectAll:
print("User rejected all.")
case .save:
print("User saved custom settings.")
case .close:
print("User closed consent layer without giving consent.")
@unknown default:
print("Unknown button event.")
}
}
// Initialize cmpManager with configuration and button click callback
cmpManager = CMPConsentTool(cmpConfig: cmpConfig, viewController: self)
.withOnCmpButtonClickedCallback(onButtonClickedEvent)
metCmpViewControllerConfigurationBlock
Pas de toestemmingslaag UIViewController aan.
parameters
Naam | Type | Beschrijving |
|
CmpViewControllerConfigurationBlock |
Pas de toestemmingslaag aan
UIViewController. |
Retourneren
CMPConsentTool
Voorbeeld
cmpConsentTool = CMPConsentTool(cmpConfig: cmpConfig)
.withCmpViewControllerConfigurationBlock { viewController in
viewController?.modalPresentationStyle = .formSheet
}
metCmpViewConfigurationBlock
Pas de UiView van de toestemmingslaag aan.
parameters
Naam | Type | Beschrijving |
|
CmpUIViewConfigurationBlock |
Pas de toestemmingslaag aan
UiView |
Retourneren
CMPConsentTool
Voorbeeld
let cmpLayout = CmpLayout.default()
cmpLayout?.cornerRadius = 10.0
cmpLayout?.customLayout = CGRect(x: 0, y: 0, width: 200, height: 300)
cmpConsentTool = CMPConsentTool(cmpConfig: cmpConfig)
.withCmpViewConfigurationBlock { uiView in
cmpLayout?.apply(to: uiView)
}
met UpdateGoogle-toestemming
Haalt de status van de Google-toestemmingsmodus op.
parameters
Naam | Type | Beschrijving |
|
[Draad: Draad]? |
Toestemmingsstatus |
Retourneren
CMPConsentTool
Voorbeeld
cmpConsentTool = CMPConsentTool(cmpConfig: cmpConfig)
.withUpdateGoogleConsent(onCmpUpdateGoogleConsent)
func onCmpUpdateGoogleConsent(consentMap: [String: String]?) {
guard let consentMap = consentMap else { return }
var firebaseConsentMap: [ConsentType: ConsentStatus] = [:]
consentMap.forEach { key, value in
if let consentType = convertToFirebaseConsentType(from: key),
let consentStatus = convertToFirebaseConsentStatus(from: value) {
firebaseConsentMap[consentType] = consentStatus
}
}
Analytics.setConsent(firebaseConsentMap)
}
func convertToFirebaseConsentType(from key: String) -> ConsentType? {
switch key {
case "analytics_storage":
return .analyticsStorage
case "ad_storage":
return .adStorage
case "ad_user_data":
return .adUserData
case "ad_personalization":
return .adPersonalization
default:
return nil
}
}
func convertToFirebaseConsentStatus(from value: String) -> ConsentStatus? {
switch value {
case "granted":
return .granted
case "denied":
return .denied
default:
return nil
}
}