Installation
Instructions d’installation pour Marketo Mobile SDK. Les étapes ci-dessous sont nécessaires pour envoyer des notifications push et/ou des messages In-App.
Installation de Marketo SDK sur iOS
Conditions préalables
- Ajout d’une application dans Marketo Admin (obtention de la clé secrète de l’application et de l’ID Munchkin)
- Configurer des notifications push (facultatif)
Installation de Framework via CocoaPods
- Installez CocoaPods.
$ sudo gem install cocoapods
- Remplacez le répertoire par le répertoire de votre projet et créez un fichier PDF avec des valeurs par défaut intelligentes.
$ pod init
- Ouvrez votre fichier PDF.
$ open -a Xcode Podfile
- Ajoutez la ligne suivante à votre fichier PDF.
$ pod 'Marketo-iOS-SDK'
- Enregistrez et fermez votre fichier PDF.
- Télécharger et installer Marketo iOS SDK.
$ pod install
- Ouvrez l’espace de travail dans Xcode.
$ open App.xcworkspace
Installer Framework à l’aide du gestionnaire de packages Swift
-
Sélectionnez votre projet dans le navigateur de projets et sous « Ajouter une dépendance de package », cliquez sur « + » comme illustré ci-dessous :
-
Ajoutez le package Marketo à partir de ce référentiel. Ajoutez cette URL pour ce référentiel : https://github.com/Marketo/ios-sdk.
-
Ajoutez maintenant le lot de ressources comme illustré ci-dessous : recherchez
MarketoFramework.XCframework
dans le navigateur de projets et ouvrez-le dans le Finder. Effectuez un glisser-déposer desMKTResources.bundle
pour copier les ressources du bundle.
Configurer l'en-tête de pontage Swift
-
Accédez à Fichier > Nouveau > Fichier et sélectionnez « Fichier d’en-tête ».
-
Nommez le fichier « <ProjectName>-Bridging-Header ».
-
Accédez à Projet > Cible > Phases de création > Compilateur Swift > Génération de code. Ajoutez le chemin suivant à l’en-tête de pontage d’objectifs :
$(PODS_ROOT)/<_ProjectName_>-Bridging-Header.h
Initialiser SDK
Avant de pouvoir utiliser le SDK Marketo iOS, vous devez l’initialiser avec votre ID de compte Munchkin et la Clé secrète de l’application. Vous trouverez chacun de ces éléments dans la zone d’administration Marketo sous « Applications et appareils mobiles ».
-
Ouvrez votre fichier AppDelegate.m (Objective-C) ou le fichier de pontage (Swift) et importez le fichier d’en-tête Marketo.h.
code language-none #import <MarketoFramework/MarketoFramework.h>
-
Collez le code suivant dans la fonction
application:didFinishLaunchingWithOptions
: .Notez que nous devons transmettre « native » comme type de framework pour les applications natives.
code language-none |
---|
|
code language-none |
---|
|
- Remplacez les
munkinAccountId
etsecretKey
ci-dessus à l’aide de votre « ID de compte Munchkin » et de votre « Clé secrète » qui se trouvent dans la section Marketo Admin > Applications et appareils mobiles.
Appareils de test iOS
- Sélectionnez Projet > Cible > Informations > Types d’URL.
- Ajouter un identifiant : $
- Définir les schémas d'URL :
mkto-<Secret Key_>
- Incluez applicationsourceApplication dans le fichier AppDelegate.m (Objective-C)
Gérer le type d’URL personnalisé dans AppDelegate
code language-none |
---|
|
code language-none |
---|
|
Installation de Marketo SDK sur Android
Conditions préalables
- Ajout d’une application dans Marketo Admin (obtention de la clé secrète de l’application et de l’ID Munchkin)
- Configurer des notifications push (facultatif)
- Télécharger Marketo SDK pour Android
Configuration d’Android SDK avec Gradle
1. Dans le fichier build.gradle de niveau application, sous la section dependencies, ajoutez :
implementation 'com.marketo:MarketoSDK:0.8.9'
-
Le fichier de
build.gradle
racine doit comportercode language-none buildscript { repositories { google() mavenCentral() }
-
Synchroniser le projet avec les fichiers Gradle
Configurer les autorisations
Ouvrez AndroidManifest.xml
et ajoutez les autorisations suivantes. Votre application doit demander les autorisations « INTERNET » et « ACCESS_NETWORK_STATE ». Si votre application demande déjà ces autorisations, ignorez cette étape.
<uses‐permission android:name="android.permission.INTERNET"></uses‐permission>
<uses‐permission android:name="android.permission.ACCESS_NETWORK_STATE"></uses‐permission>
Initialiser SDK
-
Ouvrez la classe Application ou Activity dans votre application et importez le SDK Marketo dans votre activité avant setContentView ou dans Application Context.
code language-java // Initialize Marketo Marketo marketoSdk = Marketo.getInstance(getApplicationContext()); marketoSdk.initializeSDK("native","munchkinAccountId","secretKey");
-
Configuration de ProGuard (en option)
Si vous utilisez ProGuard pour votre application, ajoutez les lignes suivantes dans votre fichier
proguard.cfg
. Le fichier se trouve dans le dossier du projet. L’ajout de ce code exclut le SDK Marketo du processus d’obscurcissement.code language-none -dontwarn com.marketo.* -dontnote com.marketo.* -keep class com.marketo.`{ *; }
Appareils de test Android
Ajoutez « MarketoActivity » au fichier AndroidManifest.xml
dans la balise de l’application.
<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>
Prise en charge de Firebase Cloud Messaging
Le kit de développement logiciel MME (SDK) pour Android a été mis à jour vers un framework plus moderne, stable et évolutif qui contient plus de flexibilité et de nouvelles fonctionnalités d'ingénierie pour votre développeur d'applications Android.
Les développeurs d’applications Android peuvent désormais utiliser directement Google Firebase Cloud Messaging (FCM) avec ce SDK.
Ajout de FCM à votre application
-
Intégrez la dernière version de Marketo Android SDK dans l’application Android. Les étapes sont disponibles sur GitHub.
-
Configurez l’application Firebase sur la console Firebase.
-
Créez/ajoutez un projet sur la console 🔗Firebase).
- Dans la console Firebase, sélectionnez
Add Project
. - Sélectionnez votre projet GCM dans la liste des projets Google Cloud existants, puis sélectionnez
Add Firebase
. - Dans l'écran d'accueil de Firebase, sélectionnez
Add Firebase to your Android App
. - Indiquez le nom de votre package et SHA-1, puis sélectionnez
Add App
. Un nouveau fichiergoogle-services.json
pour votre application Firebase est téléchargé. - Sélectionnez
Continue
et suivez les instructions détaillées pour ajouter le plug-in Google Services dans Android Studio.
- Dans la console Firebase, sélectionnez
-
Accédez aux « Paramètres du projet » dans la Présentation du projet
- Cliquez sur l’onglet « Général ». Téléchargez le fichier « google-services.json ».
- Cliquez sur l’onglet « Cloud Messaging ». Copiez « Clé du serveur » et « Identifiant de l’expéditeur ». Fournissez ces champs « Clé du serveur » et « ID de l’expéditeur » à Marketo.
-
Configuration des modifications FCM dans l’application Android
-
Basculez vers la vue Projet dans Android Studio pour afficher le répertoire racine du projet
-
Déplacez le fichier « google-services.json » téléchargé dans le répertoire racine du module d’application Android
-
Dans le fichier build.gradle au niveau du projet, ajoutez ce qui suit :
code language-none buildscript { dependencies { classpath 'com.google.gms:google-services:4.0.0' } }
-
Dans le fichier build.gradle de niveau application, ajoutez ce qui suit :
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'
-
Enfin, cliquez sur « Synchroniser maintenant » dans la barre qui s’affiche dans l’ID
-
-
-
Modifier le manifeste de votre application Le SDK FCM ajoute automatiquement toutes les autorisations requises et la fonctionnalité de récepteur requise. Veillez à supprimer les éléments obsolètes (et potentiellement dangereux, car ils peuvent entraîner la duplication des messages) suivants du manifeste de votre application :
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>
-