Installare l’SDK di Adobe Experience Platform Mobile

In questa lezione implementerai l’SDK di Mobile con le estensioni e le impostazioni corrispondenti all’ambiente di sviluppo della proprietà di tag.

NOTA

Adobe Experience Platform Launch viene integrato in Adobe Experience Platform come suite di tecnologie per la raccolta dati. Nell’interfaccia sono state introdotte diverse modifiche terminologiche di cui tenere conto durante l’utilizzo di questo contenuto:

Finalità di apprendimento

Alla fine di questa lezione, potrai:

  • Ottenere le istruzioni di installazione per la proprietà del tag mobile
  • Comprendere la differenza tra ambiente di sviluppo, ambiente di staging e ambiente di produzione.
  • Creare e modificare il Podfile
  • Importare l’SDK di Mobile nel file AppDelegate
  • Verificare che l’SDK sia stato implementato correttamente.

Ottenere le istruzioni di installazione

Le istruzioni di installazione per le proprietà dei tag per dispositivi mobili sono una raccolta di snippet di codice da eseguire in Terminal o aggiungere a posizioni specifiche nell’app mobile.

Per passare alla pagina degli ambienti, fai clic sulla scheda Environments nella navigazione superiore. Vi sono già stati creati gli ambienti di sviluppo, staging e produzione. Questi corrispondono agli ambienti tipici del processo di sviluppo e rilascio del codice. Il codice viene scritto per la prima volta dallo sviluppatore in un ambiente di sviluppo. Una volta completato il lavoro, l’utente lo invierà a un ambiente di staging per il QA e ad altri team per la revisione. Una volta effettuato con successo il QA e quando i team si ritengono soddisfatti, il codice viene pubblicato nell’ambiente di produzione, che è l’ambiente rivolto al pubblico che i visitatori sperimentano quando scaricano la tua app.

I tag consentono ulteriori ambienti di sviluppo ed è utile nelle grandi organizzazioni in cui più sviluppatori lavorano contemporaneamente a progetti diversi.

Sviluppo, staging e produzione sono gli unici ambienti necessari per completare il tutorial.

Selezione di Ambienti nella navigazione superiore

Nella riga Sviluppo, fai clic sull’icona Installa Icona Installa per aprire il modale del codice da incorporare.

Selezionare l’icona per aprire il modale del codice da incorporare

Passiamo alle istruzioni dettagliate.

Creare il Podfile e installare i Pod

Se in precedenza hai utilizzato le proprietà dei tag nei siti web, una delle prime cose che noterai è che in questo modale sono presenti molte più informazioni rispetto alle proprietà web.

L’SDK di Adobe Mobile per iOS utilizza i CocoaPod per gestire le dipendenze tra i vari componenti. Se non hai già installato CocoaPods nel tuo ambiente di sviluppo, segui le istruzioni di installazione sul loro sito web. Inoltre, se non hai già scaricato l’app Bus Booking, salvala nel computer locale ed estrai l’archivio zip sul Desktop.

Creare il Podfile

  1. Apri l’applicazione Terminal sul Mac®.

  2. Vai alla cartella del progetto in cui hai salvato l’app Swift Bus Booking (ad esempio cd Desktop/busbooking-mobileapps-master/Swift/).

    Navigazione alla directory del progetto

  3. Nell’interfaccia di raccolta dati, modifica il sistema operativo in iOS

  4. Copia la prima istruzione iOS pod init facendo clic sull’icona Copia

    Copia del pod iniziale negli Appunti nell’interfaccia Raccolta dati

  5. Nell’app Terminal, esegui il comando pod inite attendine il completamento.

    Esecuzione pod iniziale

  6. Nell’app Terminal, apri il podfile con il comando open podfile.

    Esecuzione del podfile aperto

  7. Il computer potrebbe aprire una finestra di dialogo e chiedere con quale applicazione desideri aprire il podfile. Scegli un qualsiasi editor di testo, come TextEdit,

  8. Nell’interfaccia Raccolta dati, copia l’elenco delle dipendenze facendo clic sull’icona Copia. Noterai che esiste una riga corrispondente a ciascuna delle estensioni aggiunte nella lezione precedente. Ogni estensione ha un proprio set di codice che si basa sull’estensione core per dispositivi mobili e può essere aggiunta o rimossa solo con un aggiornamento dell’app:

    Copia delle dipendenze negli Appunti nell’interfaccia Raccolta dati

  9. Nell’editor di testo, incolla le dipendenze dagli Appunti subito dopo la riga # Pods for BusBookingSwift

  10. Salva gli aggiornamenti al podfile nell’editor di testo.

    Aggiunta delle dipendenze e salvataggio

  11. È ora possibile chiudere l’editor di testo.

  12. Nell’interfaccia Raccolta dati, copia l’istruzione iOS successiva pod repo update facendo clic sull’icona Copia

    Copia aggiornamento repository del pod

  13. Nell’app Terminal, esegui il comando pod repo updatee attendine il completamento (l’operazione potrebbe richiedere alcuni minuti).

    Esecuzione dell’aggiornamento del repository del pod

  14. Nell’interfaccia Raccolta dati, copia l’istruzione iOS successiva pod install facendo clic sull’icona Copia

    Copia installazione del pod negli Appunti nell’interfaccia Raccolta dati

  15. Nell’app Terminal, esegui il comando pod installe attendine il completamento.

    Esecuzione installazione pod

  16. È ora possibile chiudere la finestra Terminal.

  17. Apri una finestra del Finder, individua la cartella in cui è stata salvata l’app Bus Booking e verifica che sia stato creato il file BusBookingSwift.xcworkspace, il Podfile, il file Podfile.lock e la cartella Pods.

    Conferma dei pod nel Finder

Aggiornare AppDelegate

Ora è il momento di aggiornare l’app per importare l’SDK.

  1. Apri il file BusBookingSwift.xcworkspace in Xcode.

  2. Apri il file AppDelegate.swift.

    Apertura del file AppDelegate

  3. Nell’interfaccia di raccolta dati, scorri fino alla sezione Aggiungi codice di inizializzazione e scegli Swift come lingua iOS in uso.

  4. Copia le istruzioni di importazione facendo clic sulla prima icona Copia nella sezione Aggiungi codice di inizializzazione:

    Copia delle istruzioni di importazione Swift negli Appunti

  5. In Xcode, incolla queste istruzioni di importazione nel file AppDelegate.swift dopo l’importazione per UIKit.

    Incollare le istruzioni di importazione Swift nel file AppDelegate

  6. Nell’interfaccia Raccolta dati, copia le due righe relative all’estensione Core, facendo clic sulla seconda icona Copia nella sezione Aggiungi codice di inizializzazione . La prima riga attiva le istruzioni di registrazione della console (le opzioni disponibili sono “debug”, “verbose”, “warning” ed “error”). La seconda riga indica l’identificatore univoco dell’ambiente tag. Un dato importante, in quanto sarà necessario aggiornare questo valore quando saremo pronti per distribuire l’app nell’ambiente di produzione.

    Copia delle istruzioni core negli Appunti

  7. In Xcode, incolla queste istruzioni core nel file AppDelegate nella parte superiore del metodo application(_:didFinishLaunchingWithOptions:):

    Incollare le istruzioni core nel file AppDelegate

  8. Nell’interfaccia di raccolta dati, copia le istruzioni di estensione facendo clic sulla terza icona Copia nella sezione Aggiungi codice di inizializzazione :

    Copia delle istruzioni dell’estensione negli Appunti

  9. In Xcode, incolla queste istruzioni di estensione nel file AppDelegate poco prima della riga return true del metodo application(_:didFinishLaunchingWithOptions:):

    Incollare le istruzioni dell’estensione nel file AppDelegate

NOTA

Le istruzioni di installazione per dispositivi mobili fornite nell’interfaccia di raccolta dati includono le istruzioni di importazione e registrazione per le estensioni Identità, Ciclo di vita e Segnale, nonché l’inizializzazione delle metriche del Ciclo di vita. Queste estensioni sono considerate parte dell’estensione core per dispositivi mobili. Se non desideri utilizzare queste estensioni nell’app, non è necessario importare, registrare o implementare altri codici associati a queste estensioni.

Inoltre, vi sono opzioni di implementazione aggiuntive che dovrebbero essere prese in considerazione quando si utilizzano queste estensioni (ad esempio, puoi mettere in pausa/riavviare la raccolta del ciclo di vita quando l’utente mette l’app in background/in primo piano). Per maggiori informazioni, consulta la documentazione relativa alle estensioni Core per dispositivi mobili.

Verificare l’implementazione

  1. Salva il tuo progetto Xcode.

  2. Esegui l’app e avviala nel simulatore. Se non hai configurato alcun dispositivo simulatore, fallo adesso, assicurandoti di scegliere un dispositivo con iOS 10+. Preferiamo utilizzare un simulatore iPhone 8 perché è facile fare clic sul pulsante Home con un mouse.

    Esecuzione dell’app e avvio nell’emulatore

  3. Attendi che il simulatore venga avviato e apra completamente l’app alla schermata di prenotazione (l’operazione potrebbe richiedere alcuni minuti).

    Attesa della completa apertura dell’app

  4. Conferma che vengono effettuate chiamate ai server Adobe nella console Xcode.

    Ricerca di chiamate nella console

Di seguito sono riportati alcuni esempi di chiamate specifiche che puoi cercare:

  1. Chiamate per il recupero della configurazione dei tag (filtra la console in base a adobedtm.com). Prendi nota delle configurazioni di estensione immesse nella lezione precedente. Quando l'aggiunta dell'estensione richiede un aggiornamento dell'app, queste impostazioni possono essere gestite esternamente nei tag e modificate in qualsiasi momento:

    2019-01-15 12:11:44.518220-0500 BusDemoSwift[52399:5056293] [AMSDK DEBUG <RulesDownloader>]: Successfully downloaded Rules from 'https://assets.adobedtm.com/launch-EN360aefc739b04410816f751a95861744-development-rules.zip'
    
    {"target.propertyToken":"","target.timeout":5,"global.privacy":"optedin","analytics.backdatePreviousSessionInfo":true,"analytics.offlineEnabled":true,"build.environment":"dev","rules.url":"https://assets.adobedtm.com/launch-EN360aefc739b04410816f751a95861744-development-rules.zip","target.clientCode":"techmarketingdemos","experienceCloud.org":"7ABB3E6A5A7491460A495D61@AdobeOrg","target.autoFetch":true,"target.fetchBackground":true,"lifecycle.sessionTimeout":300,"target.environmentId":"busbookingapp","analytics.server":"tmd.sc.omtrdc.net","analytics.rsids":"tmd-mobile-dev1","analytics.batchLimit":0,"property.id":"PRb4881271498b4f2cbaf67d38a8f3891a","global.ssl":true,"analytics.aamForwardingEnabled":true}
    
  2. Richiesta al servizio Identity (filtra la console in base a demdex.net) In questo esempio, l’ID (d_mid) è già stato impostato ed è appena stato riportato di nuovo).

    2019-01-15 12:11:45.164590-0500 BusDemoSwift[52399:5056322] [AMSDK DEBUG <com.adobe.module.identity>]:
    
    Sending request (https://dpm.demdex.net/id?d_rtbd=json&d_ver=2&d_orgid=7ABB3E6A5A7491460A495D61@AdobeOrg&d_mid=17179986463578698626041670574784107777&d_blob=j8Odv6LonN4r3an7LhD3WZrU1bUpAkFkkiY1ncBR96t2PTI&dcs_region=9)
    
  3. Risposta dal servizio Identity (filtra la console in base a ID Service). Il valore mid corrisponde al valore d_mid nella richiesta precedente:

    2019-01-15 12:11:45.681821-0500 BusDemoSwift[52399:5056322] [AMSDK DEBUG <com.adobe.module.identity>]:
    
    ID Service - Got ID Response (mid: 17179986463578698626041670574784107777, blob: j8Odv6LonN4r3an7LhD3WZrU1bUpAkFkkiY1ncBR96t2PTI, hint: 9, ttl: "604800000 ms")
    
  4. Richiesta di Analytics (filtra la console in base a Analytics request).

    2019-01-15 12:11:45.828465-0500 BusDemoSwift[52399:5056336] [AMSDK DEBUG <AnalyticsHitDatabase>]: Analytics request was sent with body
    
    (ndh=1&c.&a.&AppID=BusDemoSwift%201%20%281.0%29&CarrierName=%28null%29&DayOfWeek=3&DaysSinceFirstUse=0&DaysSinceLastUse=0&DeviceName=x86_64&HourOfDay=12&LaunchEvent=LaunchEvent&Launches=3&OSVersion=iOS%2012.1&Resolution=828x1792&RunMode=Application&TimeSinceLaunch=0&ignoredSessionLength=-1547572244&internalaction=Lifecycle&locale=en-US&.a&.c&aamb=j8Odv6LonN4r3an7LhD3WZrU1bUpAkFkkiY1ncBR96t2PTI&aamlh=9&ce=UTF-8&cp=foreground&mid=17179986463578698626041670574784107777&pageName=BusDemoSwift%201%20%281.0%29&pe=lnk_o&pev2=ADBINTERNAL%3ALifecycle&t=00%2F00%2F0000%2000%3A00%3A00%200%20300&ts=1547572305)
    

Congratulazioni, hai aggiunto l’SDK a un’app mobile.

Avanti “Aggiungere il servizio Adobe Experience Platform Identity” >

In questa pagina