Installieren von Adobe Experience Platform Mobile SDKs
Erstellt für:
- Einsteiger
- Fortgeschrittener
- Entwickler
Erfahren Sie, wie Sie das Adobe Experience Platform Mobile SDK in einer App implementieren.
Voraussetzungen
- Eine Tag-Bibliothek mit den in der vorherigen Lektion beschriebenen Erweiterungen wurde erstellt.
- Datei-ID der Entwicklungsumgebung aus der Installationsanweisungen für Mobilgeräte.
- hat die Beispielanwendung für iOS oder Beispielanwendung für Android" .
- Erfahrung mit Xcode (iOS) oder Android Studio (Android)
Lernziele
In dieser Lektion erfahren Sie Folgendes:
- Fügen Sie Ihrem Projekt die erforderlichen SDKs hinzu.
- Registrieren Sie die Erweiterungen.
Swift Package Manager
Anstatt CocoaPods und eine Pod-Datei zu verwenden (wie unter Generate SDK install instructions beschrieben), fügen Sie einzelne Pakete mit dem nativen Swift Package Manager von Xcode hinzu. Dem Xcode-Projekt wurden bereits alle Paketabhängigkeiten hinzugefügt. Der Bildschirm Xcode Paketabhängigkeiten sollte wie folgt aussehen:
In Xcode können Sie Datei > Pakete hinzufügen… verwenden. Die nachstehende Tabelle enthält Links zu den URLs, die Sie zum Hinzufügen von Paketen verwenden würden. Über die Links gelangen Sie zu weiteren Informationen zu den einzelnen Paketen.
Die AEPCore-, AEPServices- und AEPIdentity-Erweiterungen bilden die Grundlage des Adobe Experience Platform SDKS. Jede App, die SDK verwendet, muss diese Erweiterungen enthalten. Diese Module enthalten einen gemeinsamen Satz von Funktionen und Services, die für alle SDK-Erweiterungen erforderlich sind.
AEPCoreenthält die Implementierung des Event Hub. Der Event Hub ist der Mechanismus, der zum Bereitstellen von Ereignissen zwischen der Mobile App und der SDK verwendet wird. Der Event Hub wird auch für die Datenfreigabe zwischen Erweiterungen verwendet.AEPServicesbietet mehrere wiederverwendbare Implementierungen, die für die Plattformunterstützung erforderlich sind, einschließlich Netzwerk, Festplattenzugriff und Datenbankverwaltung.AEPIdentityimplementiert die Integration mit Adobe Experience Platform Identity Services.AEPSignalstellt die Signalerweiterung der Adobe Experience Platform SDKs dar, die es Marketing-Experten ermöglicht, ein „Signal“ an ihre Apps zu senden, um Daten an externe Ziele zu senden oder URLs zu öffnen.AEPLifecyclestellt die Adobe Experience Platform SDKs-Lebenszykluserweiterung dar, mit der Lebenszyklusmetriken von Anwendungen wie Informationen zur Anwendungsinstallation oder -aktualisierung, Informationen zum Anwendungsstart und zur Sitzung, Geräteinformationen und zusätzliche vom Anwendungsentwickler bereitgestellte Kontextdaten erfasst werden können.
AEPEdge) können Sie Daten von einer Mobile App an das Adobe Edge Network senden. Mit dieser Erweiterung können Sie Adobe Experience Cloud-Funktionen robuster implementieren, mehrere Adobe-Lösungen über einen Netzwerkaufruf bereitstellen und diese Informationen gleichzeitig an Adobe Experience Platform weiterleiten.Die Edge Network Mobile-Erweiterung ist eine Erweiterung für Adobe Experience Platform SDK. Die Erweiterung erfordert die
AEPCore- und AEPServices-Erweiterungen für die Ereignisverarbeitung sowie die AEPEdgeIdentity-Erweiterung zum Abrufen der Identitäten (z. B. ECID).AEPEdgeIdentity) ermöglicht die Verarbeitung von Benutzeridentitätsdaten aus einer Mobile App bei Verwendung der Adobe Experience Platform SDK und der Edge Network-Erweiterung.AEPConsent) ermöglicht die Erfassung von Einverständnisvoreinstellungen über die Mobile App bei Verwendung der Adobe Experience Platform SDK und der Edge Network-Erweiterung.AEPUserProfile) ist eine Erweiterung zur Verwaltung von Benutzerprofilen für die Adobe Experience Platform SDK.AEPPlaces) können Sie Geolokalisierungsereignisse verfolgen, wie sie in der Adobe Places-Benutzeroberfläche und in Datenerfassungs-Tag-Regeln von Adobe definiert sind.AEPMessaging) können Sie Push-Benachrichtigungs-Token und Clickthrough-Feedback für Push-Benachrichtigungen an die Adobe Experience Platform senden.AEPOptimize) stellt APIs bereit, um Echtzeit-Personalisierungs-Workflows in den Adobe Experience Platform Mobile SDKs mit Adobe Target oder Adobe Journey Optimizer Offer Decisioning zu ermöglichen. Es sind AEPCore- und AEPEdge-Erweiterungen erforderlich, um Personalisierungsabfrageereignisse an Experience Edge Network zu senden.Erweiterungen importieren
Öffnen Sie in Xcode das Projekt im Start-Ordner der Beispielanwendung.
Navigieren Sie in Xcode zu Luma > Luma > AppDelegate und stellen Sie sicher, dass die folgenden Importe Teil dieser Quelldatei sind.
// import AEP MobileSDK libraries
import AEPCore
import AEPServices
import AEPIdentity
import AEPSignal
import AEPLifecycle
import AEPEdge
import AEPEdgeIdentity
import AEPEdgeConsent
import AEPUserProfile
import AEPPlaces
import AEPMessaging
import AEPOptimize
import AEPAssurance
Tun Sie dasselbe für Luma > Luma > Utils > MobileSDK.
AppDelegate aktualisieren
Navigieren Sie im Xcode-Projekt Luma Navigator zu Luma > > AppDelegate.
-
Ersetzen Sie den
@AppStorageWertYOUR_ENVIRONMENT_ID_GOES_HEREfürenvironmentFileIddurch den Wert für die Umgebungsdatei-ID, den Sie von Tags in Installationsanweisungen für SDK generieren abgerufen haben.@AppStorage("environmentFileId") private var environmentFileId = "YOUR_ENVIRONMENT_ID_GOES_HERE" -
Fügen Sie der
application(_, didFinishLaunchingWithOptions)-Funktion den folgenden Code hinzu.// Define extensions let extensions = [ AEPIdentity.Identity.self, Lifecycle.self, Signal.self, Edge.self, AEPEdgeIdentity.Identity.self, Consent.self, UserProfile.self, Places.self, Messaging.self, Optimize.self, Assurance.self ] // Register extensions MobileCore.registerExtensions(extensions, { // Use the environment file id assigned to this application via Adobe Experience Platform Data Collection Logger.aepMobileSDK.info("Luma - using mobile config: \(self.environmentFileId)") MobileCore.configureWith(appId: self.environmentFileId) // set this to false or comment it when deploying to TestFlight (default is false), // set this to true when testing on your device. MobileCore.updateConfigurationWith(configDict: ["messaging.useSandbox": true]) if appState != .background { // only start lifecycle if the application is not in the background MobileCore.lifecycleStart(additionalContextData: nil) } // assume unknown, adapt to your needs. MobileCore.setPrivacyStatus(.unknown) })
Der obige Code bewirkt Folgendes:
- Registriert die erforderlichen Erweiterungen.
- Konfiguriert MobileCore und andere Erweiterungen für die Verwendung Ihrer Tag-Eigenschaftskonfiguration.
- Aktiviert die Debug-Protokollierung. Weitere Informationen und Optionen finden Sie in der Dokumentation zu Adobe Experience Platform Mobile SDK.
- Startet die Lebenszyklusüberwachung. Weitere finden Sie Schritt „Lebenszyklus“ im Tutorial .
- Setzt das Standard-Einverständnis auf unbekannt. Weitere finden Sie Schritt „Einverständnis“ im Tutorial .
Stellen Sie sicher, dass Sie MobileCore.configureWith(appId: self.environmentFileId) mit der appId aktualisieren, basierend auf der environmentFileId aus der Tag-Umgebung, für die Sie sie erstellen (Entwicklung, Staging oder Produktion).
Gradle
Wenn Sie die Abhängigkeiten aus den Installationsanweisungen für SDK generieren verwenden, um mithilfe der Integration von Gradle in Android individuelle Pakete hinzuzufügen, wurden im Android Studio-Projekt bereits alle Paketabhängigkeiten hinzugefügt.
-
Wählen Sie
als Tool aus. -
Ansicht Android auswählen.
-
Wählen Sie Gradle scripts > build.gradle.kts (Module :app) im linken Bereich aus. Scrollen Sie dann im rechten Bereich, bis Sie
dependenciessehen.
In Android Studio können Sie mit Datei > Projektstruktur… Modulabhängigkeiten hinzufügen. Wählen Sie Abhängigkeiten aus und verwenden Sie dann Module
com.adobe
marketing.mobile:
Die MobileCore- und Identity-Erweiterungen bilden die Grundlage der Adobe Experience Platform SDK. Jede App, die SDK verwendet, muss diese enthalten. Diese Module enthalten einen gemeinsamen Satz von Funktionen und Services, die für alle SDK-Erweiterungen erforderlich sind.
MobileCoreenthält die Implementierung des Event Hub. Der Event Hub ist der Mechanismus, der zum Bereitstellen von Ereignissen zwischen der Mobile App und der SDK verwendet wird. Der Event Hub wird auch für die Datenfreigabe zwischen Erweiterungen verwendet und bietet mehrere wiederverwendbare Implementierungen, die für die Plattformunterstützung erforderlich sind, einschließlich Netzwerk, Festplattenzugriff und Datenbankverwaltung.Identityimplementiert die Integration mit Adobe Experience Platform Identity Services.Signalstellt die Signalerweiterung von Adobe Experience Platform SDK dar, die es Marketing-Experten ermöglicht, ein „Signal“ an ihre Apps zu senden, um Daten an externe Ziele zu senden oder URLs zu öffnen.Lifecyclestellt die Lebenszykluserweiterung von Adobe Experience Platform SDK dar, mit der Lebenszyklusmetriken von Anwendungen wie Informationen zur Anwendungsinstallation oder -aktualisierung, Informationen zum Anwendungsstart und zur Sitzung, Geräteinformationen und zusätzliche vom Anwendungsentwickler bereitgestellte Kontextdaten erfasst werden können.
AEPEdge) können Sie Daten von einer Mobile App an das Adobe Edge Network senden. Mit dieser Erweiterung können Sie Adobe Experience Cloud-Funktionen robuster implementieren, mehrere Adobe-Lösungen über einen Netzwerkaufruf bereitstellen und diese Informationen gleichzeitig an Adobe Experience Platform weiterleiten.Die Edge Network Mobile-Erweiterung ist eine Erweiterung für Adobe Experience Platform SDK. Für die Ereignisbehandlung sind die Erweiterungen
Mobile Core und Services erforderlich. Und die Identity for Edge Network-Erweiterung zum Abrufen der Identitäten, z. B. ECID.Dieser Service ist die Places Mobile-Erweiterung für Android 2.x Adobe Experience Platform SDK und erfordert die Core-Erweiterung für die Ereignisverarbeitung.
Erweiterungen importieren
Navigieren Sie in Android Studio zu app > kotlin+java > com.adobe.luma.tutorial.android > LumaApplication und stellen Sie sicher, dass die folgenden Importe Teil der Quelldatei sind.
import com.adobe.marketing.mobile.Assurance
import com.adobe.marketing.mobile.Edge
import com.adobe.marketing.mobile.Lifecycle
import com.adobe.marketing.mobile.LoggingMode
import com.adobe.marketing.mobile.Messaging
import com.adobe.marketing.mobile.MobileCore
import com.adobe.marketing.mobile.MobilePrivacyStatus
import com.adobe.marketing.mobile.Places
import com.adobe.marketing.mobile.Signal
import com.adobe.marketing.mobile.UserProfile
import com.adobe.marketing.mobile.edge.consent.Consent
import com.adobe.marketing.mobile.edge.identity.Identity
import com.adobe.marketing.mobile.optimize.Optimize
Tun Sie dasselbe für app > kotlin+java > com.adobe.luma.tutorial.android > models > MobileSDK.
LumaApplication aktualisieren
In der Ansicht Android navigieren Sie zu app > kotlin+java > com.adobe.luma.tutorial.android > LumaApplication in Android Studio.
-
Ersetzen Sie
"YOUR_ENVIRONMENT_FILE_ID"inprivate var environmentFileId = "YOUR_ENVIRONMENT_ID_GOES_HERE"durch den Wert für die Umgebungsdatei-ID, den Sie von Tags in Installationsanweisungen für SDK generieren abgerufen haben.private var environmentFileId = "YOUR_ENVIRONMENT_ID_GOES_HERE" -
Fügen Sie den folgenden Code zu
override fun onCreate()Funktion inclass LumaApplication : Application()hinzu.// Define extensions val extensions = listOf( Identity.EXTENSION, Lifecycle.EXTENSION, Signal.EXTENSION, Edge.EXTENSION, Consent.EXTENSION, UserProfile.EXTENSION, Places.EXTENSION, Messaging.EXTENSION, Optimize.EXTENSION, Assurance.EXTENSION ) // Register extensions MobileCore.registerExtensions(extensions) { // Use the environment file id assigned to this application via Adobe Experience Platform Data Collection Log.i("Luma", "Using mobile config: $environmentFileId") MobileCore.configureWithAppID(environmentFileId) // set this to true when testing on your device, default is false. //MobileCore.updateConfiguration(mapOf("messaging.useSandbox" to true)) // assume unknown, adapt to your needs. MobileCore.setPrivacyStatus(MobilePrivacyStatus.UNKNOWN) }Der obige Code bewirkt Folgendes:
- Registriert die erforderlichen Erweiterungen.
- Konfiguriert MobileCore und andere Erweiterungen für die Verwendung Ihrer Tag-Eigenschaftskonfiguration.
- Aktiviert die Debug-Protokollierung. Weitere Informationen und Optionen finden Sie in der Dokumentation zu Adobe Experience Platform Mobile SDK.
- Startet die Lebenszyklusüberwachung. Weitere finden Sie Schritt „Lebenszyklus“ im Tutorial .
- Setzt das Standard-Einverständnis auf unbekannt. Weitere finden Sie Schritt „Einverständnis“ im Tutorial .
Stellen Sie sicher, dass Sie MobileCore.configureWith(environmentFileId) mit der environmentFileId aktualisieren, basierend auf der Umgebungsdatei-ID aus der Tag-Umgebung, für die Sie sie erstellen (Entwicklung, Staging oder Produktion).
Weiter: Einrichten von Assurance