[iOS] 2. API-dokumentation

Klassen CMPManager klassen tillhandahåller metoder för att hantera användarens samtycke till databehandling och spårning. Denna dokumentation täcker de viktigaste metoderna som finns tillgängliga för integration i mobilappar. 

Alla exempel som nämns nedan är hämtade från och finns i vår demoapp.

Kontrollera de föråldrade metoderna om du redan integrerar v3 av vårt CMP SDK.

Initialisering

setUrlConfig()

Ställer in URL-konfigurationen för Consent Manager.

Parametrar:

  • config: A UrlConfig objektet som innehåller följande egenskaper:
    • id: Sträng – Kod-ID hämtat från din CMP-instrumentpanel
    • domain: Sträng – Domänen för samtyckeshantering, hämtad från instrumentpanelen
    • language: Sträng – Språkkoden (t.ex. ”EN”, ”IT”, ”DE” osv.)
    • appName: Sträng – Namnet på din app, används endast för rapporteringsändamål 
    • jsonConfig: JSON-objekt – Valfritt, används endast i särskilda fall. Använd det inte om det inte tydligt anges på din CMP-instrumentpanel tillsammans med de andra parametrarna ovan. 
    • noHash: boolean – Förhindrar att den genererade URL:en som laddas av webview använder en hash (#) för att vidarebefordra samtyckesobjektet 

Returer: Ogiltiga

Exempel:

CMPManager.shared.setUrlConfig(UrlConfig(
    id: "0a000000000a1",					// The Code-ID retrieved from your CMP dashboard
    domain: "delivery.consentmanager.net",  // The domain retrieved from your CMP dashboard
    language: "EN",							// Language code, examples: IT, DE, EN, etc. 
    appName: "MyApp"						// The name of your app, used for reporting purposes on your CMP dashboard
))

setWebViewConfig()

Konfigurerar utseendet och beteendet för WebView för samtycke. Du kan ställa in positionen där WKWebiew-objektet som visar samtyckeslagret ska visas, till exempel i helskärmsläge, i den nedre halvan av skärmen eller i den övre halvan. Du kan också ställa in bakgrundsstilen, hörnradien, om det ska respektera enhetens säkra område samt om det ska reagera på orienteringsförändringar eller inte, om din mobil bara fungerar i en enda orientering, vilket vanligtvis händer med spel som bara använder den horisontella konfigurationen av enhetens skärm.   

Parametrar:

  • config: A ConsentLayerUIConfig objekt med följande egenskaper:
    • position: Position – WebViews position (t.ex. .fullScreen)
    • backgroundStyle: BackgroundStyle – Bakgrundsstilen (t.ex. .dimmed)
    • cornerRadius: CGFloat – WebViews hörnradie
    • respectsSafeArea: Bool – Om säkerhetsområdet ska respekteras. Denna parameter finns men har ingen effekt i iOS SDK på grund av hur olika enheter och orienteringar (iPhone SE x iPhone 17 Pro Max jämfört med alla iPads) skulle bete sig, särskilt på grund av att de rundade sidorna på de olika enheterna har olika proportioner, eller hur Dynamic Island skulle hanteras av den underliggande mobilappen som integrerar vårt SDK, för att bara nämna några utmaningar som uppstod under utvecklingen.
    • allowsOrientationChanges: Bool – Om orienteringsändringar ska tillåtas

Returer: Ogiltiga

Exempel:

CMPManager.shared.setWebViewConfig(ConsentLayerUIConfig(
    position: .fullScreen,
    backgroundStyle: .dimmed(.black, 0.5),
    cornerRadius: 10,
    respectsSafeArea: true,
    allowsOrientationChanges: true
))

setPresentingViewController()

Anger den vykontroll som ska presentera samtyckeslagret. Vanligtvis skickar du self som den aktuella View Controller. 

Parametrar:

  • viewController: UIViewController – Viewcontrollern som visar samtyckeslagret

Returer: Ogiltiga

Exempel:

CMPManager.shared.setPresentingViewController(self)

setATTStatus()

Ställer in ATT-statusen som hämtas från ATTManager.AuthorizationStatus, så att rätt målgruppsanpassat samtyckeslager kan visas.

Parametrar:

  • _: det råa värdet från AuthorizationStatus

Returer: Ogiltiga

Exempel:

cmpManager.setATTStatus(2)  // 0 = NotDetermined, 1 = Restricted, 2 = Denied, and 3 = Authorized
         					// retrieved from ATTManager.AuthorizationStatus

 

Hantering av samtyckeslager

getUserStatus()

Ger en detaljerad översikt över användarens aktuella samtyckesstatus och preferenser. Denna metod ger omfattande information om användarens samtyckesval, inklusive deras övergripande samtyckesstatus, individuella leverantörsbehörigheter, ändamålsspecifika samtycken och relevanta samtyckessträngar.

Parametrar:

  • Ingen

Returer:

Returtyp: CMPUserStatusResponse objekt, förklaras i koden nedan. 

Exempel:

let status = CMPManager.shared.getUserStatus()
var message = "Status: (status.status)nn"

message += "Vendors:n"
for (vendorId, state) in status.vendors {
    message += "- (vendorId): (state)n"
}

message += "nPurposes:n"
for (purposeId, state) in status.purposes {
    message += "- (purposeId): (state)n"
}

message += "nTCF: (status.tcf)n"
message += "Additional Consent: (status.addtlConsent)n"
message += "Regulation: (status.regulation)"

print(message)

isConsentRequired()

Kontrollerar om samtycke krävs för användaren utan att automatiskt visa samtyckeslagret om det behövs. Detta kommer att göra ett nätverksanrop till våra servrar via WKWebView som skapats inuti vårt SDK, vilket kommer att skicka ett meddelande till vår backend via JavaScript. Vår backend kommer att upptäcka om enheten har ett giltigt samtycke och returnera false om det samtycke som hittats i enheten är giltigt eller true om ett nytt samtycke måste samlas in från användaren, vilket förbrukar en sidvisning i processen.

Parametrar: Inga

Återgå: 

  • completion: (Bool) -> Void – En closure som anropas med resultatet, antingen true om inget giltigt samtycke hittades eller false i annat fall.

Exempel:

CMPManager.shared.isConsentRequired { required in
    print("Consent is required: (required)")
}

checkAndOpen()

Kontrollerar med servern om samtycke krävs och öppnar samtyckeslagret vid behov. Detta kommer att göra ett nätverksanrop till våra servrar via WKWebView som skapats inuti vårt SDK, vilket förbrukar en sidvisning i processen. Detta nätverksanrop kommer att skicka ett meddelande till vår backend via JavaScript, som kommer att upptäcka om enheten har ett giltigt samtycke eller inte, vilket i sin tur kommer att avgöra om samtyckeslagret behöver visas eller inte.  

Parametrar:

  • jumpToSettings: Ett booleskt värde för att avgöra om det visade samtyckeslagret automatiskt ska leda till sidan där användarna har mer detaljerad kontroll över de samtycken de gett, vilket gör att de kan finjustera sina val (när det är inställt på true) eller den ursprungliga standardskärmen med knapparna (när inställt på false eller undertryckt).
  • completion: En avslutning som anropas när operationen är klar.

Returer: Ogiltiga

Exempel:

CMPManager.shared.checkAndOpen { error in
    if let error = error {
        print("Error: (error.localizedDescription)")
    } else {
        print("Check completed successfully")
    }
}

forceOpen()

Öppnar samtyckeslagret. Det gör ett nätverksanrop till vår backend, vilket förbrukar en sidvisning i processen. Det visar samtyckeslagret som låter användaren antingen Acceptera alla eller Avvisa alla val, eller, beroende på parametern jumpToSettings, låter dem styra samtyckena på ett mer detaljerat sätt. 

Parametrar:

  • jumpToSettings: Ett booleskt värde för att avgöra om det visade samtyckeslagret automatiskt ska leda till sidan där användarna har mer detaljerad kontroll över de samtycken de gett, vilket gör att de kan finjustera sina val (när det är inställt på true) eller den ursprungliga standardskärmen med knapparna (när inställt på false eller undertryckt).
  • completion: En avslutningsfunktion som anropas när operationen är klar och returnerar antingen ett lyckat resultat eller ett fel.

Returer: Ogiltiga

Exempel:

CMPManager.shared.forceOpen { error in
    if let error = error {
        print("Error: (error.localizedDescription)")
    } else {
        print("Consent layer opened successfully")
    }
}

Samtyckesstatus

exportCMPInfo()

Exporterar den aktuella samtyckesinformationen som lagras på enheten som en sträng. Denna metod hämtar samtyckessträngen från enhetens UserDefaults-område och returnerar den. Vanligtvis skickas denna information vidare till importCMPInfo metoden.

Returvärden: Sträng – Den exporterade samtyckesinformationen

Exempel:

let cmpInfo = CMPManager.shared.exportCMPInfo()
print("Exported CMP info: (cmpInfo)")

getGoogleConsentModeStatus()

Integreras sömlöst med Consent Mode, en Google-teknik som möjliggör konvertering och analysmodellering, vilket gör att Googles tjänster kan fylla i dataluckor när användare inte ger sitt samtycke. Denna funktion översätter användarens samtycke från din CMP till ett format som Firebase Analytics kan förstå, så att du enkelt kan hämta resultatet av denna metod och vidarebefordra det till Firebases .setConsent-metod.

  • Därefter uppdateras Google Analytics med användarens aktuella samtyckesstatus.

Parametrar:

  • Ingen

Returnerar: [String: String] – En nyckelvärdesmatris med de fyra nycklarna för Googles samtyckesläge: .analyticsStorage, .adStorage, .adUserData och .adPersonalization, samt deras respektive värden i form av .choiceDoesntExist, .granted eller .denied.

Exempel:

showToast(message: "Google Consent Mode Status: n (CMPManager.shared.getGoogleConsentModeStatus())")

getStatusForPurpose()

Kontrollerar om samtycke har givits för ett specifikt syfte och om detta samtycke lagras på enheten. Den kontrollerar UserDefaults-området för godkända eller avvisade samtycken och filtrerar ID:t som skickas som parameter, och returnerar true om samtycket godkändes eller false i annat fall. 

Parametrar:

  • id: Sträng – ID för det syfte som ska kontrolleras

Returnerar: UniqueConsentStatus – En uppräkning med värdena .choiceDoesntExist om inget samtycke har givits, .granted eller .denied.

Exempel:

let purposeStatus = CMPManager.shared.getStatusForPurpose(id: "c53")
var message = "Purpose c53 status: "
switch purposeStatus {
   	case .choiceDoesntExist: message += "No Choice"
    case .granted: message += "Granted"
    case .denied: message += "Denied"
    @unknown default: message += "No Choice"
}

getStatusForVendor()

Kontrollerar om samtycke har givits för en specifik leverantör och om detta samtycke lagras på enheten. Den kontrollerar UserDefaults-området för godkända eller avvisade samtycken och filtrerar ID:t som skickas som en parameter, och returnerar true om samtycket godkändes eller false i annat fall. 

Parametrar:

  • id: Sträng – ID för det syfte som ska kontrolleras

Returnerar: UniqueConsentStatus – En uppräkning med värdena .choiceDoesntExist om inget samtycke har givits, .granted eller .denied.

Exempel:

let purposeStatus = CMPManager.shared.getStatusForVendor(id: "s2789")
var message = "Vendor s2789's status: "
switch purposeStatus {
   	case .choiceDoesntExist: message += "No Choice"
    case .granted: message += "Granted"
    case .denied: message += "Denied"
    @unknown default: message += "No Choice"
}

Ändring av samtycke

acceptAll()

Accepterar samtycke för alla ändamål och leverantörer, vilket förbrukar en sidvisning i processen. Det gör ett nätverksanrop till vår backend via ett meddelande som injiceras i WKWebView, vilket kommer att utlösa godkännandet av alla samtycken, enligt CMP-konfigurationen. Denna information kommer endast att vara tillgänglig för de andra metoderna efter att återanropet returnerar en framgång eller ett misslyckande, vilket innebär att den har bearbetats framgångsrikt av vår backend och lagrats på enheten. 

Parametrar:

  • completion: En avslutning som anropas när operationen är klar

Returer: Ogiltiga

Exempel:

CMPManager.shared.acceptAll { error in
    if let error = error {
        print("Error: (error.localizedDescription)")
    } else {
        print("All consents accepted successfully")
    }
}

acceptPurposes()

Accepterar samtycke för angivna ändamål, vilket förbrukar en sidvisning i processen. Det gör ett nätverksanrop till vår backend via ett meddelande som injiceras i WKWebView, vilket utlöser godkännandet av de angivna ändamålen som skickas som en parameter, enligt CMP-konfigurationen. Denna information kommer endast att vara tillgänglig för de andra metoderna efter att återanropet returnerar en framgång eller ett misslyckande, vilket innebär att den har bearbetats framgångsrikt av vår backend och lagrats på enheten. 

Parametrar:

  • purposes: [String] – En matris med syfte-ID:n som ska accepteras
  • updatePurpose: Bool – Om relaterade syften ska uppdateras
  • completion: En avslutning som anropas när operationen är klar

Returer: Ogiltiga

Exempel:

CMPManager.shared.acceptPurposes(["c52", "c53"], updatePurpose: true) { error in
    if let error = error {
        print("Error: (error.localizedDescription)")
    } else {
        print("Purposes accepted successfully")
    }
}

acceptVendors()

Accepterar samtycke för angivna leverantörer, vilket förbrukar en sidvisning i processen. Det gör ett nätverksanrop till vår backend via ett meddelande som injiceras i WKWebView, vilket utlöser godkännandet av de angivna leverantörerna som skickas som en parameter, enligt CMP-konfigurationen. Denna information kommer endast att vara tillgänglig för de andra metoderna efter att återanropet returnerat en framgång eller ett misslyckande, vilket innebär att den har bearbetats framgångsrikt av vår backend och lagrats på enheten.  

Parametrar:

  • vendors: [String] – En matris med leverantörs-ID:n som ska accepteras
  • completion: En avslutning som anropas när operationen är klar

Returer: Ogiltiga

Exempel:

CMPManager.shared.acceptVendors(["s2790", "s2791"]) { error in
    if let error = error {
        print("Error: (error.localizedDescription)")
    } else {
        print("Vendors accepted successfully")
    }
}

importCMPInfo()

Importerar samtyckesinformation från en CMP-sträng. Detta tar emot en sträng som innehåller samtyckesdata, vanligtvis erhållen genom exportCMPInfo metoden. Denna information sparas i enhetens UserDefaults-område och skickas samtidigt till vår backend via ett meddelande som injiceras i WKWebView, vilket förbrukar en sidvisning i processen. 

Parametrar:

  • cmpString: Sträng – CMP-strängen som ska importeras
  • completion: En avslutning som anropas när operationen är klar

Returer: Ogiltiga

Exempel:

let cmpString = "Q1FERkg3QVFERkg3QUFmR01CSVRCQkVnQUFBQUFBQUFBQWlnQUFBQUFBQUEjXzUxXzUyXzUzXzU0XzU1XzU2XyNfczI3ODlfczI3OTBfczI3OTFfczI2OTdfczk3MV9VXyMxLS0tIw"
CMPManager.shared.importCMPInfo(cmpString) { error in
    if let error = error {
        print("Error: (error.localizedDescription)")
    } else {
        print("CMP info imported successfully")
    }
}

rejectAll()

Avvisar samtycke för alla ändamål och leverantörer, vilket förbrukar en sidvisning i processen. Det gör ett nätverksanrop till vår backend via ett meddelande som injiceras i WKWebView, vilket utlöser avvisandet av alla samtycken, enligt CMP-konfigurationen. Denna information kommer endast att vara tillgänglig för de andra metoderna efter att återuppringningen returnerat en framgång eller ett misslyckande, vilket innebär att den har bearbetats framgångsrikt av vår backend och lagrats på enheten. 

Parametrar:

  • completion: En avslutning som anropas när operationen är klar

Returer: Ogiltiga

Exempel:

CMPManager.shared.rejectAll { error in
    if let error = error {
        print("Error: (error.localizedDescription)")
    } else {
        print("All consents rejected successfully")
    }
}

rejectPurposes()

Avvisar samtycke för angivna ändamål, vilket förbrukar en sidvisning i processen. Det gör ett nätverksanrop till vår backend via ett meddelande som injiceras i WKWebView, vilket utlöser avvisandet av de angivna ändamålen som skickas som en parameter, enligt CMP-konfigurationen. Denna information kommer endast att vara tillgänglig för de andra metoderna efter att återanropet returnerat en framgång eller ett misslyckande, vilket innebär att den har bearbetats framgångsrikt av vår backend och lagrats på enheten. 

Parametrar:

  • purposes: [String] – En matris med syfte-ID:n som ska avvisas
  • updateVendor: Bool – Om relaterade leverantörer ska uppdateras
  • completion: En avslutning som anropas när operationen är klar

Returer: Ogiltiga

Exempel:

CMPManager.shared.rejectPurposes(["c52", "c53"], updateVendor: true) { error in
    if let error = error {
        print("Error: (error.localizedDescription)")
    } else {
        print("Purposes rejected successfully")
    }
}

rejectVendors()

Avvisar samtycke för angivna leverantörer, vilket förbrukar en sidvisning i processen. Det gör ett nätverksanrop till vår backend via ett meddelande som injiceras i WKWebView, vilket utlöser avvisandet av de angivna leverantörerna som skickas som en parameter, enligt CMP-konfigurationen. Denna information kommer endast att vara tillgänglig för de andra metoderna efter att återanropet returnerat en framgång eller ett misslyckande, vilket innebär att den har bearbetats framgångsrikt av vår backend och lagrats på enheten. 

Parametrar:

  • vendors: [String] – En matris med leverantörs-ID:n som ska avvisas
  • completion: En avslutning som anropas när operationen är klar

Returer: Ogiltiga

Exempel:

CMPManager.shared.rejectVendors(["s2790", "s2791"]) { error in
    if let error = error {
        print("Error: (error.localizedDescription)")
    } else {
        print("Vendors rejected successfully")
    }
}

 

resetConsentManagementData()

Detta tar bort nyckel/värde-paren från områdena UserDefaults och SharedPreferences på enheten. För att radera data helt kan du behöva ta bort cookies, dataposter samt webview-historik och cache för att helt tvinga fram ett nytt samtycke.  

Parametrar:

  • completion: En avslutning som anropas när operationen är klar

Returer: Ogiltiga

Exempel:

CMPManager.shared.resetConsentManagementData { error in
    if let error = error {
        print("Error: (error.localizedDescription)")
    } else {
        print("Consent management data reset successfully")
    }
}

Överföring av samtyckesdata till SDK:er från tredje part

uppdateraThirdPartyConsent

Denna metod hanterar automatisk överföring av samtyckesdata till tredjeparts-SDK:er som AppsFlyer, AdJust, Branch, Kochava, Singular, AirBridge och Tenjin. Det fungerar via introspektion/reflektion, så initialisera tredjeparts-SDK:n med dina inloggningsuppgifter enligt den vanliga strategi som rekommenderas av leverantören, så kommer vår CMP-SDK att upptäcka instansen av tredjeparts-SDK:n och anropa de nödvändiga metoderna i bakgrunden. 

CMPManagerDelegate-händelser

getOnClickLinkCallback

SDK:n tillhandahåller en flexibel mekanism för länkhantering som gör det möjligt för applikationer att anpassa hur URL:er inom samtyckeslagret hanteras. Som standard öppnas alla länkar i WebView, men applikationer kan avlyssna specifika URL:er för att hantera dem externt vid behov.

// Example 1: Handle specific domains in external browser
cmpManager.setLinkClickHandler { url in
    // Handle links to specific domains externally
    if url.host?.contains("google.com") == true || 
       url.host?.contains("facebook.com") == true {
        UIApplication.shared.open(url, options: [:], completionHandler: nil)
        return true // URL handled externally
    }
    
    // Let other URLs load in the WebView
    return false
}

// Example 2: Handle URLs based on scheme
cmpManager.setLinkClickHandler { url in
    // Open mail links in mail app
    if url.scheme == "mailto" {
        UIApplication.shared.open(url, options: [:], completionHandler: nil)
        return true
    }
    
    // Open tel links in phone app
    if url.scheme == "tel" {
        UIApplication.shared.open(url, options: [:], completionHandler: nil)
        return true
    }
    
    // Let all other URLs load in the WebView
    return false
}

didReceiveConsent(consent: String, jsonObject: [String: Any])

Detta utlöses när samtyckeslagret stängdes efter att användaren uppdaterat sina samtycken ELLER när metoder anropas som orsakar ändringar i samtyckena, som acceptAll, rejectAll, acceptVendors, rejectVendors, etc. Det innebär att användaren har godkänt eller avvisat vissa eller alla samtycken, och att dessa har sparats korrekt på enheten.

didShowConsentLayer

Detta utlöses när samtyckeslagret faktiskt visades. Det betyder att det inte fanns något giltigt samtycke på enheten, så ett nytt måste samlas in.

didCloseConsentLayer


Detta utlöses när:

1. SDK:n kontrollerade behovet av samtycke, men det behövdes inte och samtyckeslagret visades inte. Det betyder att det redan finns ett giltigt samtycke i enheten, så ett nytt behövs inte och samtyckeslagret kommer inte att visas.
2. Användaren interagerade med samtyckeslagret och gav sitt samtycke, varpå samtyckeslagret stängdes.

didReceiveError

Detta utlöses när SDK stöter på något fel och returnerar sin kod. Vid dåliga nätverksförhållanden kan man förvänta sig en fast timeout på cirka 10 sekunder. 

Föråldrade metoder

Alla metoderna nedan har fasats ut och kommer att tas bort helt från SDK från och med juli 2025

checkIfConsentIsRequired()

Kontrollerar om samtycke krävs för användaren. Detta kommer att göra ett nätverksanrop till våra servrar via WKWebView som skapats inuti vårt SDK, vilket kommer att skicka ett meddelande till vår backend via JavaScript. Vår backend kommer att upptäcka om enheten har ett giltigt samtycke eller inte, och ett meddelande kommer att skickas tillbaka till WKWebView, vilket avgör om det behöver visas eller inte, vilket förbrukar en sidvisning i processen. Beroende på det returnerade meddelandet kommer SDK att tolka det och returnera sina resultat via slutföringshanteraren.

Parametrar:

  • completion: (Bool) -> Void – En closure som anropas med resultatet, antingen true eller false.

Returer: Tonfall

Exempel:

CMPManager.shared.checkIfConsentIsRequired { required in
    print("Consent is required: (required)")
}

jumpToSettings()

Öppnar samtyckeslagret och hoppar direkt till inställningssidan. Detta kommer att göra ett nätverksanrop till våra servrar, vilket förbrukar en sidvisning i processen, anropar visningen av WKWebView, men visar inställningssidan istället för den första sidan i samtyckeslagret, vilket ger användarna valet att acceptera alla eller avvisa alla samtycken. Detta leder istället till sidan där användarna ges en mer detaljerad kontroll över samtyckena, vilket gör att de kan finjustera sina val. 

Parametrar:

  • completion: En avslutning som anropas när operationen är klar

Returer: Ogiltiga

Exempel:

CMPManager.shared.jumpToSettings { error in
    if let error = error {
        print("Error: (error.localizedDescription)")
    } else {
        print("Jumped to settings successfully")
    }
}

hasPurposeConsent()

Kontrollerar om samtycke har givits för ett specifikt syfte och om detta samtycke lagras på enheten. Den kontrollerar UserDefaults-området för godkända eller avvisade samtycken och filtrerar ID:t som skickas som parameter, och returnerar true om samtycket godkändes eller false i annat fall. 

Obs: Kontrollera alltid hasUserChoice() först! I fall där inget val finns kan funktionen returnera oväntade returvärden.

Parametrar:

  • id: Sträng – ID för det syfte som ska kontrolleras

Återkoppling: BoolTrue om samtycke ges, false annars

Exempel:

let hasPurposeConsent = CMPManager.shared.hasPurposeConsent(id: "c53")
print("Has consent for purpose c53: (hasPurposeConsent)")

hasUserChoice()

Kontrollerar om användaren har gjort ett val angående samtycken och om detta samtycke lagras på enheten. Det innebär att användaren antingen har accepterat alla samtycken, avvisat alla eller gjort ett blandat val av avvisade och accepterade samtycken, beroende på CMP-utformningen, som kan tillåta användarna att godkänna vissa samtycken och avvisa andra. Denna information kommer endast att vara uppdaterad efter att samtycket har lagrats korrekt i UserDefaults-området, så om du kontrollerar direkt efter att ha använt metoder som utlöser ändringar i samtycket, såsom openConsentLayer, acceptAll eller rejectAll, till exempel, väntatills återanropet från dessa metoder utlöses innan du använder metoden hasUserChoice, för att säkerställa att informationen är uppdaterad.

Returvärden: Bool – true om användaren har gjort ett val, false annars

Exempel:

let hasChoice = CMPManager.shared.hasUserChoice()
print("User has made a choice: (hasChoice)")

hasVendorConsent()

Kontrollerar om samtycke har givits för en specifik leverantör och om detta samtycke lagras på enheten, enligt CMP-konfigurationerna. Denna information kommer endast att vara uppdaterad efter att samtycket har lagrats korrekt i UserDefaults-området, så om du kontrollerar direkt efter att ha använt metoder som utlöser ändringar i samtycket, såsom openConsentLayer, acceptAll eller rejectAll, till exempel, väntatills återanropet från dessa metoder utlöses innan du anropar metoden hasUserChoice, för att säkerställa att informationen är uppdaterad.

Parametrar:

  • id: Sträng – Leverantörens ID som ska kontrolleras

Återkoppling: BoolTrue om samtycke ges, false annars

Exempel:

let hasVendorConsent = CMPManager.shared.hasVendorConsent(id: "s2789")
print("Has consent for vendor s2789: (hasVendorConsent)")

getAllPurposesIDs()

Hämtar alla ändamåls-ID:n som lagrats på enheten, enligt CMP-konfigurationerna. Denna information kommer endast att vara uppdaterad efter att samtycket har lagrats korrekt i UserDefaults-området, så om du kontrollerar direkt efter att ha använt metoder som utlöser ändringar i samtycket, såsom openConsentLayer, acceptAll eller rejectAll, till exempel, väntatills återkopplingen från dessa metoder utlöses innan du anropar metoden hasUserChoice, för att säkerställa att informationen är uppdaterad.

Returvärden: [String] – En array med alla ändamåls-ID:n

Exempel:

let allPurposes = CMPManager.shared.getAllPurposesIDs()
print("All purposes: (allPurposes)")

getAllVendorsIDs()

Hämtar alla leverantörs-ID:n som lagrats på enheten, enligt CMP-konfigurationerna. Denna information kommer endast att vara uppdaterad efter att samtycket lagrats korrekt i UserDefaults-området, så om du kontrollerar direkt efter att ha använt metoder som utlöser ändringar i samtycket, såsom openConsentLayer, acceptAll eller rejectAll, till exempel, väntatills återanropet från dessa metoder utlöses innan du anropar metoden hasUserChoice, för att säkerställa att informationen är uppdaterad.

Returvärden: [String] – En array med alla leverantörs-ID:n

Exempel:

let allVendors = CMPManager.shared.getAllVendorsIDs()
print("All vendors: (allVendors)")

getDisabledPurposesIDs()

Hämtar ID:n för alla inaktiverade syften som lagrats på enheten, enligt CMP-konfigurationerna och användarens val. Om användaren accepterar alla samtycken kommer detta att vara tomt.  Denna information kommer endast att vara uppdaterad efter att samtycket har lagrats korrekt i UserDefaults-området, så om du kontrollerar direkt efter att ha använt metoder som utlöser ändringar i samtycket, såsom openConsentLayer, acceptAll eller rejectAll, till exempel, väntatills återanropet från dessa metoder utlöses innan du anropar metoden hasUserChoice, för att säkerställa att informationen är uppdaterad.

Returvärden: [String] – En matris med inaktiverade syfte-ID:n

Exempel:

let disabledPurposes = CMPManager.shared.getDisabledPurposesIDs()
print("Disabled purposes: (disabledPurposes)")

getDisabledVendorsIDs()

Hämtar ID:n för alla inaktiverade leverantörer som lagrats på enheten, enligt CMP-konfigurationerna. Om användaren accepterar alla samtycken kommer detta att vara tomt. Denna information kommer endast att vara uppdaterad efter att samtycket har lagrats korrekt i UserDefaults-området, så om du kontrollerar direkt efter att ha använt metoder som utlöser ändringar i samtycket, såsom openConsentLayer, acceptAll eller rejectAll, till exempel, väntatills återanropet från dessa metoder utlöses innan du anropar metoden hasUserChoice, för att säkerställa att informationen är uppdaterad.

Returvärden: [String] – En matris med inaktiverade leverantörs-ID:n

Exempel:

let disabledVendors = CMPManager.shared.getDisabledVendorsIDs()
print("Disabled vendors: (disabledVendors)")

getEnabledPurposesIDs()

Hämtar ID:n för alla aktiverade syften som lagras på enheten, enligt CMP-konfigurationerna. Om användaren avvisar alla samtycken kommer detta att vara tomt. Denna information kommer endast att vara uppdaterad efter att samtycket har lagrats korrekt i UserDefaults-området, så om du kontrollerar direkt efter att ha använt metoder som utlöser ändringar i samtycket, såsom openConsentLayer, acceptAll eller rejectAll, till exempel, väntatills återanropet från dessa metoder utlöses innan du anropar metoden hasUserChoice, för att säkerställa att informationen är uppdaterad.

Returvärden: [String] – En array med aktiverade syfte-ID:n

Exempel:

let enabledPurposes = CMPManager.shared.getEnabledPurposesIDs()
print("Enabled purposes: (enabledPurposes)")

getEnabledVendorsIDs()

Hämtar ID:n för alla aktiverade leverantörer som lagras på enheten. Om användaren avvisar alla samtycken kommer detta att vara tomt. Denna information kommer endast att vara uppdaterad efter att samtycket har lagrats korrekt i UserDefaults-området, så om du kontrollerar direkt efter att ha använt metoder som utlöser ändringar i samtycket, såsom openConsentLayer, acceptAll eller rejectAll, till exempel, väntatills återkopplingen från dessa metoder utlöses innan du använder metoden hasUserChoice, för att säkerställa att informationen är uppdaterad.

Returvärden: [String] – En matris med aktiverade leverantörs-ID:n

Exempel:

let enabledVendors = CMPManager.shared.getEnabledVendorsIDs()
print("Enabled vendors: (enabledVendors)")

 

We do our best to keep this purely informative documentation up to date. However, if you notice that any of these guides need a little touch-up, let us know!