WebViews verwerken
Leer hoe u gegevensverzameling kunt verwerken met WebViews in een mobiele app.
Vereisten
- App met SDK's geïnstalleerd en geconfigureerd met succes gemaakt en uitgevoerd.
Leerdoelstellingen
In deze les zult u:
- Begrijp waarom u speciale aandacht voor WebViews in uw app moet houden.
- Begrijp de code die wordt vereist om volgende kwesties te verhinderen.
Mogelijke problemen met bijhouden
Als u gegevens verzendt vanuit het native gedeelte van de app en vanuit een WebView in de app, genereert elk zijn eigen Experience Cloud-id (ECID), wat leidt tot verbroken resultaten en opgeblazen bezoek-/bezoekersgegevens. Meer informatie over de ECID vindt u in de ECID-overzicht.
Om die ongewenste situatie op te lossen, is het belangrijk om de ECID van de gebruiker van het inheemse gedeelte van uw app tot een WebView over te gaan u in uw app zou kunnen willen gebruiken.
De uitbreiding van de Identiteit van de Rand AEP binnen WebView wordt gebruikt verzamelt huidige ECID en voegt het aan URL toe in plaats van het verzenden van een verzoek naar Adobe voor een nieuwe identiteitskaart die. De implementatie gebruikt deze ECID vervolgens om de URL aan te vragen.
Implementatie
Navigeren naar Luma > Luma > Views > Info > TermsOfServiceSheet en zoek de func loadUrl()
in de final class SwiftUIWebViewModel: ObservableObject
klasse. Voeg de volgende vraag toe om de Webmening te behandelen:
// Handle web view
AEPEdgeIdentity.Identity.getUrlVariables {(urlVariables, error) in
if let error = error {
print("Error with Webview", error)
return;
}
if let urlVariables: String = urlVariables {
urlString.append("?" + urlVariables)
guard let url = URL(string: urlString) else {
return
}
DispatchQueue.main.async {
self.webView.load(URLRequest(url: url))
}
}
Logger.aepMobileSDK.info("Successfully retrieved urlVariables for WebView, final URL: \(urlString)")
}
De AEPEdgeIdentity.Identity.getUrlVariables
API stelt de variabelen voor URL in zodat deze alle relevante informatie bevatten, zoals ECID, en meer. In het voorbeeld gebruikt u een lokaal bestand, maar op externe pagina's zijn dezelfde concepten van toepassing.
Meer informatie over de Identity.getUrlVariables
API in de Identiteit voor Edge Network Extension API-naslaggids.
Valideren
De code uitvoeren:
-
Controleer de installatie-instructies om de simulator of het apparaat aan te sluiten op Betrouwbaarheid.
-
Ga naar de Instellingen in de app
-
Tik op de knop View… om de Terms of Use.
{width="300"} {width="300"}
-
In Verzekering UI, zoek naar URL-variabelen van Edge Identity Response gebeurtenis van de com.adobe.griffon.mobile leverancier.
-
Selecteer de gebeurtenis en bekijk de urlvariable in het veld ACPExtensionEventData -object, waarbij de volgende parameters worden bevestigd, aanwezig zijn in de URL:
adobe_mc
,mcmid
, enmcorgid
.Een monster
urvariables
het veld is hieronder te vinden :-
Origineel (met escape-tekens)
code language-html adobe_mc=TS%3D1636526122%7CMCMID%3D79076670946787530005526183384271520749%7CMCORGID%3D7ABB3E6A5A7491460A495D61%40AdobeOrg
-
Mooi
code language-html adobe_mc=TS=1636526122|MCMID=79076670946787530005526183384271520749|MCORGID=7ABB3E6A5A7491460A495D61@AdobeOrg
-
Jammer genoeg, is het zuiveren van de Webzitting beperkt. U kunt bijvoorbeeld het Adobe Experience Platform Debugger in uw browser niet gebruiken om de webweergavesessie te blijven opsporen.
VisitorAPI.js
.Volgende: Identiteit