Installazione

Installa e inizializza Marketo Mobile SDK per inviare notifiche push, messaggi in-app o entrambi.

Installare Marketo SDK su iOS

Prerequisiti

  1. Aggiungi un’applicazione in Marketo Admin e ottieni la chiave segreta dell’applicazione e l’ID Munchkin.
  2. Facoltativo: Configurare le notifiche push.

Installare Framework tramite CocoaPods

  1. Installare CocoaPods. $ sudo gem install cocoapods
  2. Cambia la directory nella directory del progetto e crea un Podfile con impostazioni avanzate. $ pod init
  3. Apri il Podfile. $ open -a Xcode Podfile
  4. Aggiungi la seguente riga al tuo Podfile. $ pod 'Marketo-iOS-SDK'
  5. Salva e chiudi il Podfile.
  6. Scaricare e installare Marketo iOS SDK. $ pod install
  7. Apri l’area di lavoro in Xcode. $ open App.xcworkspace

Installare Framework con Gestione pacchetti Swift

  1. Seleziona il progetto in Navigatore progetti. In “Aggiungi dipendenza pacchetto”, selezionare “+”.

    Aggiungi dipendenza

  2. Aggiungere il pacchetto Marketo da https://github.com/Marketo/ios-sdk.

    URL archivio

  3. Aggiungi il bundle di risorse. Individuare MarketoFramework.XCframework nel Navigatore progetti e aprirlo nel Finder. Trascina MKTResources.bundle per copiare le risorse del bundle.

Imposta intestazione di bridging Swift

  1. Selezionare File > Nuovo > File e quindi “File di intestazione”.

    Selezionare "File di intestazione"

  2. Denomina il file “<ProjectName>-Bridging-Header”.

  3. Vai a Progetto > Target > Fasi build > Compilatore Swift > Generazione del codice. Aggiungi il seguente percorso a Objective-Bridging Header:

    $(PODS_ROOT)/<_ProjectName_>-Bridging-Header.h

    Fasi build

Inizializza SDK

Inizializza Marketo iOS SDK con il tuo ID account Munchkin e la chiave segreta dell’app. Trova entrambi i valori in “Mobile Apps and Devices” (App e dispositivi mobili) in Amministrazione Marketo.

  1. Apri il file AppDelegate.m per Objective-C o il file Bridging per Swift. Importa il file di intestazione Marketo.h.

    code language-none
    #import <MarketoFramework/MarketoFramework.h>
    
  2. Incollare il codice seguente nella funzione application:didFinishLaunchingWithOptions:.

    Passa “nativo” come tipo di framework per le app native.

Obiettivo C
code language-objectivec
Marketo *sharedInstance = [Marketo sharedInstance];

[sharedInstance initializeWithMunchkinID:@"munchkinAccountId" appSecret:@"secretKey" mobileFrameworkType:@"native" launchOptions:launchOptions];
Swift
code language-swift
let sharedInstance: Marketo = Marketo.sharedInstance()

sharedInstance.initialize(withMunchkinID: "munchkinAccountId", appSecret: "secretKey", mobileFrameworkType: "native", launchOptions: launchOptions)
  1. Sostituire munkinAccountId e secretKey con “ID account Munchkin” e “Chiave segreta” da Marketo Admin > Mobile Apps and Devices.

Dispositivi di prova iOS

  1. Seleziona Progetto > Target > Informazioni > Tipi di URL.
  2. Aggiungi l’identificatore ${PRODUCT_NAME}.
  3. Impostare gli schemi URL su mkto-<Secret Key_>.
  4. Aggiungi applicationsourceApplication al file AppDelegate.m per Objective-C.

Gestire il tipo di URL personalizzato in AppDelegate

Obiettivo C
code language-objectivec
- (BOOL)application:(UIApplication *)app
            openURL:(NSURL *)url
            options:(NSDictionary<UIApplicationOpenURLOptionsKey,id> *)options{

    return [[Marketo sharedInstance] application:app
                                         openURL:url
                                         options:options];
}
Swift
code language-swift
private func application(_ app: UIApplication, open url: URL, options: [UIApplication.OpenURLOptionsKey : Any] = [:]) -> Bool
    {
        return Marketo.sharedInstance().application(app, open: url, options: options)
    }

Installare Marketo SDK su Android

Prerequisiti

  1. Aggiungi un’applicazione in Marketo Admin e ottieni la chiave segreta dell’applicazione e l’ID Munchkin.
  2. Facoltativo: Configurare le notifiche push.
  3. Scarica Marketo SDK per Android

Installazione di Android SDK con Gradle

  1. Nel file build.gradle a livello di applicazione, aggiungi la dipendenza nella sezione dipendenze.

    implementation 'com.marketo:MarketoSDK:0.8.9'

  2. Aggiungere la configurazione seguente al file radice build.gradle.

    code language-none
    buildscript {
        repositories {
            google()
            mavenCentral()
        }
    
  3. Sincronizza il progetto con i file Gradle.

Configurare le autorizzazioni

Apri AndroidManifest.xml e aggiungi le seguenti autorizzazioni. L’app deve richiedere le autorizzazioni “INTERNET” e “ACCESS_NETWORK_STATE”. Ignora questo passaggio se l’app li richiede già.

<uses‐permission android:name="android.permission.INTERNET"></uses‐permission>
<uses‐permission android:name="android.permission.ACCESS_NETWORK_STATE"></uses‐permission>

Inizializza SDK

  1. Aprire la classe Application o Activity. Importa Marketo SDK nell’attività prima di setContentView o nel contesto dell’applicazione.

    code language-java
    // Initialize Marketo
    Marketo marketoSdk = Marketo.getInstance(getApplicationContext());
    marketoSdk.initializeSDK("native","munchkinAccountId","secretKey");
    
  2. Configurazione ProGuard (opzionale)

    Se l’app utilizza ProGuard, aggiungere le righe seguenti al file proguard.cfg nella cartella del progetto. Questa configurazione esclude Marketo SDK dall’offuscamento.

    code language-none
    -dontwarn com.marketo.*
    -dontnote com.marketo.*
    -keep class com.marketo.`{ *; }
    

Dispositivi di prova Android

Aggiungi “MarketoActivity” a AndroidManifest.xml all’interno del tag dell’applicazione.

<activity android:name="com.marketo.MarketoActivity"  android:configChanges="orientation|screenSize" >
    <intent-filter android:label="MarketoActivity" >
        <action  android:name="android.intent.action.VIEW"/>
        <category  android:name="android.intent.category.DEFAULT"/>
        <category  android:name="android.intent.category.BROWSABLE"/>
        <data android:host="add_test_device" android:scheme="mkto" />
    </intent-filter>
</activity>

Supporto di Firebase Cloud Messaging

MME SDK per Android supporta l’uso diretto di Firebase Cloud Messaging (FCM) di Google.

Aggiunta di FCM all’applicazione

  1. Integra la versione più recente di Marketo Android SDK nell’app Android. Consulta i passaggi in GitHub.

  2. Configura l’app Firebase nella console Firebase.

    1. Crea/Aggiungi un progetto nella console 🔗Firebase.

      1. Nella console Firebase, seleziona Add Project.
      2. Selezionare il progetto GCM dall’elenco dei progetti Google Cloud esistenti e selezionare Add Firebase.
      3. Nella schermata di benvenuto di Firebase, seleziona Add Firebase to your Android App.
      4. Specificare il nome del pacchetto e SHA-1 e selezionare Add App. È stato scaricato un nuovo file google-services.json per l’app Firebase.
      5. Selezionare Continue e seguire le istruzioni dettagliate per l’aggiunta del plug-in Google Services in Android Studio.
    2. Vai a “Impostazioni progetto” in Panoramica progetto

      1. Fare clic sulla scheda Generale. Scarica il file “google-services.json”.
      2. Fai clic sulla scheda “Messaggistica cloud”. Copia “Chiave server” e “ID mittente”. Fornisci questi “Server Key” e “Sender ID” a Marketo.
    3. Configura FCM nell’app Android.

      1. Passa alla vista Progetto in Android Studio per visualizzare la directory principale del progetto

        1. Sposta il file scaricato “google-services.json” nella directory principale del modulo app Android

        2. In build.gradle a livello di progetto, aggiungi quanto segue:

          code language-none
          buildscript {
            dependencies {
              classpath 'com.google.gms:google-services:4.0.0'
            }
          }
          
        3. In build.gradle a livello di app, aggiungi quanto segue:

          code language-none
          dependencies {
            compile 'com.google.firebase:firebase-core:17.4.0'
          }
          // Add to the bottom of the file
          apply plugin: 'com.google.gms.google-services'
          
        4. Infine, seleziona Sync now nella barra visualizzata nell’ID

    4. Modifica il manifesto dell’app. FCM SDK aggiunge automaticamente le autorizzazioni richieste e le funzionalità del ricevitore. Rimuovi i seguenti elementi obsoleti che potrebbero causare la duplicazione dei messaggi:

      code language-xml
      <uses-permission android:name="android.permission.WAKE_LOCK" />
      <permission android:name="<your-package-name>.permission.C2D_MESSAGE" android:protectionLevel="signature" />
      <uses-permission android:name="<your-package-name>.permission.C2D_MESSAGE" />
      
      ...
      
      <receiver>
        android:name="com.google.android.gms.gcm.GcmReceiver"
        android:exported="true"
        android:permission="com.google.android.c2dm.permission.SEND"
        <intent-filter>
          <action android:name="com.google.android.c2dm.intent.RECEIVE" />
          <category android:name="<your-package-name> />
        </intent-filter>
      </receiver>
      
recommendation-more-help
marketo-developer-help