Instalación
Instrucciones de instalación del SDK de Marketo Mobile. Se requieren los pasos siguientes para enviar notificaciones push o mensajes en la aplicación.
Instalación del SDK de Marketo en iOS
Prerrequisitos
- Agregar una aplicación al administrador de Marketo (obtener la clave secreta de la aplicación y el identificador de Munchkin)
- Configurar notificaciones push (opcional)
Instalar Framework mediante CocoaPods
- Instale CocoaPods.
$ sudo gem install cocoapods
- Cambie el directorio al directorio del proyecto y cree un Podfile con valores predeterminados inteligentes.
$ pod init
- Abra el Podfile.
$ open -a Xcode Podfile
- Añada la siguiente línea a su Podfile.
$ pod 'Marketo-iOS-SDK'
- Guarde y cierre el Podfile.
- Descargue e instale el SDK de Marketo iOS.
$ pod install
- Abra el espacio de trabajo en Xcode.
$ open App.xcworkspace
Instalación de Framework mediante el Administrador de paquetes Swift
-
Seleccione el proyecto desde el Navegador de proyectos y en "Añadir dependencia del paquete", haga clic en "+" como se muestra a continuación:
-
Agregue el paquete Marketo de este repositorio. Añada esta URL para este repositorio: https://github.com/Marketo/ios-sdk.
-
Ahora agregue el paquete de recursos como se muestra: Busque
MarketoFramework.XCframework
en el navegador de proyectos y ábralo en el buscador. Arrastre y suelteMKTResources.bundle
para copiar recursos del paquete.
Configurar encabezado de puente de Swift
-
Vaya a Archivo > Nuevo > Archivo y seleccione "Archivo de encabezado".
-
Asigne un nombre al archivo "<ProjectName>-Bridging-Header".
-
Vaya a Proyecto > Target > Fases de compilación > Compilador Swift > Generación de código. Añada la siguiente ruta al encabezado Objective-Bridging:
$(PODS_ROOT)/<_ProjectName_>-Bridging-Header.h
Inicializar SDK
Antes de poder usar el SDK para iOS de Marketo, debe inicializarlo con el ID de cuenta de Munchkin y la clave secreta de la aplicación. Puede encontrar cada uno de estos elementos en el área de Administración de Marketo debajo de "Aplicaciones y dispositivos móviles".
-
Abra el archivo AppDelegate.m (Objective-C) o el archivo puente (Swift) e importe el archivo de encabezado Marketo.h.
code language-none #import <MarketoFramework/MarketoFramework.h>
-
Pegue el siguiente código dentro de la función
application:didFinishLaunchingWithOptions
:.Tenga en cuenta que debemos pasar "native" como tipo de marco de trabajo para las aplicaciones nativas.
code language-none |
---|
|
code language-none |
---|
|
- Reemplace
munkinAccountId
ysecretKey
por su "ID de cuenta de Munchkin" y "clave secreta" que se encuentran en la sección Administración > Aplicaciones y dispositivos móviles de Marketo.
Dispositivos de prueba iOS
- Seleccione Proyecto > Target > Información > Tipos de URL.
- Agregar identificador: $
- Establecer esquemas de URL:
mkto-<Secret Key_>
- Incluir aplicaciónsourceApplication en el archivo AppDelegate.m (Objective-C)
Administrar el tipo de URL personalizada en AppDelegate
code language-none |
---|
|
code language-none |
---|
|
Cómo instalar el SDK de Marketo en Android
Prerrequisitos
- Agregar una aplicación al administrador de Marketo (obtener la clave secreta de la aplicación y el identificador de Munchkin)
- Configurar notificaciones push (opcional)
- Descargar el SDK de Marketo para Android
Configuración del SDK de Android con Gradle
1. En el archivo build.gradle del nivel de aplicación, en la sección de dependencias, agregue
implementation 'com.marketo:MarketoSDK:0.8.9'
-
El archivo raíz
build.gradle
debe tenercode language-none buildscript { repositories { google() mavenCentral() }
-
Sincronizar el proyecto con los archivos de Gradle
Configuración de permisos
Abra AndroidManifest.xml
y agregue los siguientes permisos. La aplicación debe solicitar los permisos "INTERNET" y "ACCESS_NETWORK_STATE". Si la aplicación ya solicita estos permisos, omita este paso.
<uses‐permission android:name="android.permission.INTERNET"></uses‐permission>
<uses‐permission android:name="android.permission.ACCESS_NETWORK_STATE"></uses‐permission>
Inicializar SDK
-
Abra la clase Application o Activity en la aplicación e importe el SDK de Marketo en la actividad antes de setContentView o en el contexto de la aplicación.
code language-java // Initialize Marketo Marketo marketoSdk = Marketo.getInstance(getApplicationContext()); marketoSdk.initializeSDK("native","munchkinAccountId","secretKey");
-
Configuración de ProGuard (opcional)
Si usa ProGuard para su aplicación, agregue las líneas siguientes al archivo
proguard.cfg
. El archivo se encuentra en la carpeta del proyecto. Añadir este código excluye el SDK de Marketo del proceso de ofuscación.code language-none -dontwarn com.marketo.* -dontnote com.marketo.* -keep class com.marketo.`{ *; }
Dispositivos de prueba Android
Agregue "MarketoActivity" al archivo AndroidManifest.xml
dentro de la etiqueta de la aplicación.
<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>
Compatibilidad con Firebase Cloud Messaging
El kit de desarrollo de software (SDK) de MME para Android se ha actualizado a un marco de trabajo más moderno, estable y escalable que contiene más flexibilidad y nuevas funciones de ingeniería para el desarrollador de aplicaciones de Android.
Los desarrolladores de aplicaciones de Android ahora pueden usar directamente Firebase Cloud Messaging (FCM) de Google con este SDK.
Añadir FCM a la aplicación
-
Integre el SDK Android de Marketo más reciente en la aplicación Android. Los pasos están disponibles en GitHub.
-
Configure la aplicación Firebase en la consola de Firebase.
-
Crear/agregar un proyecto en 🔗consola Firebase.
- En la consola de Firebase, seleccione
Add Project
. - Seleccione el proyecto GCM de la lista de proyectos existentes de Google Cloud y seleccione
Add Firebase
. - En la pantalla de bienvenida de Firebase, seleccione
Add Firebase to your Android App
. - Proporcione el nombre del paquete y SHA-1, y seleccione
Add App
. Se ha descargado un nuevo archivo degoogle-services.json
para la aplicación Firebase. - Seleccione
Continue
y siga las instrucciones detalladas para agregar el complemento de Google Services en Android Studio.
- En la consola de Firebase, seleccione
-
Vaya a "Configuración del proyecto" en Información general del proyecto
- Haga clic en la pestaña General. Descargue el archivo "google-services.json".
- Haga clic en la pestaña "Mensajería en la nube". Copie "Clave de servidor" e "ID de remitente". Proporcione estas opciones "Clave de servidor" e "ID de remitente" a Marketo.
-
Configuración de cambios de FCM en la aplicación de Android
-
Cambie a la vista Proyecto en Android Studio para ver el directorio raíz del proyecto
-
Mueva el archivo "google-services.json" descargado al directorio raíz del módulo de la aplicación de Android
-
En el archivo build.gradle de nivel de proyecto, agregue lo siguiente:
code language-none buildscript { dependencies { classpath 'com.google.gms:google-services:4.0.0' } }
-
En App-level build.gradle, agregue lo siguiente:
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'
-
Finalmente, haga clic en "Sincronizar ahora" en la barra que aparece en el ID
-
-
-
Editar el manifiesto de la aplicación El SDK de FCM agrega automáticamente todos los permisos necesarios y la funcionalidad del receptor requerida. Asegúrese de eliminar los siguientes elementos obsoletos (y potencialmente dañinos, ya que pueden provocar la duplicación de mensajes) del manifiesto de la aplicación:
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>
-