Installation

Installationsanweisungen für das Marketo Mobile SDK. Die folgenden Schritte sind erforderlich, um Push-Benachrichtigungen und/oder In-App-Nachrichten zu senden.

Installieren des Marketo SDK in iOS

Voraussetzungen

  1. Hinzufügen einer Anwendung in Marketo Admin (Abrufen des geheimen Schlüssels für die Anwendung und der Munchkin-ID)
  2. Push-Benachrichtigungen einrichten (optional)

Framework über CocoaPods installieren

  1. Installieren Sie CocoaPods. $ sudo gem install cocoapods
  2. Ändern Sie das Verzeichnis in Ihr Projektverzeichnis und erstellen Sie eine Podfile mit intelligenten Standardeinstellungen. $ pod init
  3. Öffnen Sie Ihre Podfile. $ open -a Xcode Podfile
  4. Fügen Sie Ihrer Podfile die folgende Zeile hinzu. $ pod 'Marketo-iOS-SDK'
  5. Speichern und schließen Sie Ihre Podfile.
  6. Herunterladen und Installieren des Marketo iOS SDK $ pod install
  7. Öffnen Sie Workspace in Xcode. $ open App.xcworkspace

Installieren von Framework mithilfe von Swift Package Manager

  1. Wählen Sie Ihr Projekt im Projektnavigator aus und klicken Sie unter "Paketabhängigkeit hinzufügen"auf "+", wie unten dargestellt:

    Abhängigkeit hinzufügen

  2. Fügen Sie das Marketo-Paket aus diesem Repo hinzu. Fügen Sie diese URL für dieses Repository hinzu: https://github.com/Marketo/ios-sdk.

    Repo URL

  3. Fügen Sie nun das Ressourcen-Bundle wie folgt hinzu: Suchen Sie MarketoFramework.XCframework im Projektnavigator und öffnen Sie es in Finder. Ziehen Sie MKTResources.bundle in den Arbeitsbereich, um die Bundle-Ressourcen zu kopieren.

Swift Bridging-Kopfzeile einrichten

  1. Gehen Sie zu Datei > Neu > Datei und wählen Sie "Header File".

    Wählen Sie Header File

  2. Nennen Sie die Datei "<Projektname>-Bridging-Header".

  3. Gehen Sie zu Projekt > Ziel > Build-Phasen > Swift-Compiler > Codegenerierung. Fügen Sie den folgenden Pfad zur Objective-Bridging-Kopfzeile hinzu:

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

    Build-Phasen

SDK initialisieren

Bevor Sie das Marketo iOS SDK verwenden können, müssen Sie es mit Ihrer Munchkin-Konto-ID und Ihrem App-Geheimnisschlüssel initialisieren. Sie finden diese im Marketo Admin-Bereich unter "Apps und Geräte für Mobilgeräte".

  1. Öffnen Sie die Datei AppDelegate.m (Objective-C) oder Bridging (Swift) und importieren Sie die Header-Datei Marketo.h.

    code language-none
    #import <MarketoFramework/MarketoFramework.h>
    
  2. Fügen Sie den folgenden Code in die Funktion application:didFinishLaunchingWithOptions: ein.

    Beachten Sie, dass "nativ"als Framework-Typ für native Apps übergeben werden muss.

Ziel C
code language-none
Marketo *sharedInstance = [Marketo sharedInstance];

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

sharedInstance.initialize(withMunchkinID: "munchkinAccountId", appSecret: "secretKey", mobileFrameworkType: "native", launchOptions: launchOptions)
  1. Ersetzen Sie die Werte munkinAccountId und secretKey oben durch Ihre "Munchkin-Konto-ID"und "Secret Key", die im Abschnitt Marketo Admin > Mobile Apps und Geräte zu finden sind.

iOS-Testgeräte

  1. Wählen Sie Projekt > Ziel > Info > URL-Typen aus.
  2. Kennung hinzufügen: $
  3. Festlegen von URL-Schemas: mkto-<Secret Key_>
  4. AnwendungsourceApplication in die Datei AppDelegate.m einschließen (Objective-C)

Umgang mit benutzerdefiniertem URL-Typ in AppDelegate

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

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

Installieren des Marketo SDK in Android

Voraussetzungen

  1. Hinzufügen einer Anwendung in Marketo Admin (Abrufen des geheimen Schlüssels für die Anwendung und der Munchkin-ID)
  2. Push-Benachrichtigungen einrichten (optional)
  3. Marketo SDK für Android herunterladen

Android SDK-Einrichtung mit Gradle

1. Fügen Sie in der Datei "build.gradle"auf Anwendungsebene unter dem Abschnitt "Abhängigkeiten"hinzu

implementation 'com.marketo:MarketoSDK:0.8.9'

  1. Die Stamm-Datei build.gradle sollte

    code language-none
    buildscript {
        repositories {
            google()
            mavenCentral()
        }
    
  2. Projekt mit Gradle-Dateien synchronisieren

Berechtigungen konfigurieren

Öffnen Sie AndroidManifest.xml und fügen Sie die folgenden Berechtigungen hinzu. Ihre App muss die Berechtigungen "INTERNET"und "ACCESS_NETWORK_STATE"anfordern. Wenn Ihre App diese Berechtigungen bereits anfordert, überspringen Sie diesen Schritt.

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

SDK initialisieren

  1. Öffnen Sie die Anwendungs- oder Aktivitätsklasse in Ihrer App und importieren Sie das Marketo SDK vor setContentView oder im Anwendungskontext in Ihre Aktivität.

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

    Wenn Sie ProGuard für Ihre App verwenden, fügen Sie die folgenden Zeilen in Ihrer proguard.cfg -Datei hinzu. Die Datei befindet sich in Ihrem Projektordner. Durch Hinzufügen dieses Codes wird das Marketo SDK aus dem Verschleierungsprozess ausgeschlossen.

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

Android-Testgeräte

Fügen Sie "MarketoActivity"zur Datei AndroidManifest.xml innerhalb des Anwendungs-Tags hinzu.

<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>

Firebase Cloud Messaging-Unterstützung

Das MME Software Development Kit (SDK) für Android wurde auf ein moderneres, stabileres und skalierbareres Framework aktualisiert, das mehr Flexibilität und neue Engineering-Funktionen für Ihren Android-App-Entwickler bietet.

Entwickler von Android-Apps können jetzt mit diesem SDK Googles Firebase Cloud Messaging (FCM) direkt verwenden.

Hinzufügen von FCM zu Ihrer Anwendung

  1. Integrieren Sie das neueste Marketo Android SDK in die Android App.  Schritte sind unter GitHub verfügbar.

  2. Konfigurieren Sie die Firebase App in der Firebase Console.

    1. Erstellen/Hinzufügen eines Projekts in der Firebase-Konsole 🔗.

      1. Wählen Sie in der Firebase-Konsole die Option Add Project aus.
      2. Wählen Sie Ihr GCM-Projekt aus der Liste der vorhandenen Google Cloud-Projekte und dann Add Firebase aus.
      3. Wählen Sie im Firebase-Willkommensbildschirm Add Firebase to your Android App aus.
      4. Geben Sie Ihren Paketnamen und SHA-1 ein und wählen Sie Add App aus. Eine neue google-services.json -Datei für Ihre Firebase-App wird heruntergeladen.
      5. Wählen Sie "Continue"aus und befolgen Sie die detaillierten Anweisungen zum Hinzufügen des Google Services-Plug-ins in Android Studio.
    2. Navigieren Sie in der Projektübersicht zu "Projekteinstellungen".

      1. Klicken Sie auf die Registerkarte "Allgemein". Laden Sie die Datei "google-services.json"herunter.
      2. Klicken Sie auf die Registerkarte "Cloud Messaging". Kopieren Sie "Server Key" und "Sender ID". Geben Sie diese "Serverschlüssel"und "Sender-ID"an Marketo an.
    3. Konfigurieren von FCM-Änderungen in der Android App

      1. Wechseln Sie in Android Studio zur Projektansicht, um den Stammordner Ihres Projekts anzuzeigen.

        1. Verschieben Sie die heruntergeladene Datei "google-services.json"in den Stammordner des Android-Anwendungsmoduls.

        2. Fügen Sie auf Projektebene build.gradle Folgendes hinzu:

          code language-none
          buildscript {
            dependencies {
              classpath 'com.google.gms:google-services:4.0.0'
            }
          }
          
        3. Fügen Sie in "build.gradle"auf Anwendungsebene Folgendes hinzu:

          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. Klicken Sie abschließend in der Leiste, die in der ID angezeigt wird, auf "Jetzt synchronisieren"

    4. Bearbeiten des Manifests Ihrer App Das FCM-SDK fügt automatisch alle erforderlichen Berechtigungen und die erforderlichen Empfängerfunktionen hinzu. Achten Sie darauf, die folgenden veralteten (und potenziell schädlichen) Elemente aus dem Manifest Ihrer App zu entfernen, da sie eine Nachrichtenduplizierung verursachen können:

      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
bb269a6d-047a-4bf7-9acd-23ad9a63dc59