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

  1. Agregar una aplicación al administrador de Marketo (obtener la clave secreta de la aplicación y el identificador de Munchkin)
  2. Configurar notificaciones push (opcional)

Instalar Framework mediante CocoaPods

  1. Instale CocoaPods. $ sudo gem install cocoapods
  2. Cambie el directorio al directorio del proyecto y cree un Podfile con valores predeterminados inteligentes. $ pod init
  3. Abra el Podfile. $ open -a Xcode Podfile
  4. Añada la siguiente línea a su Podfile. $ pod 'Marketo-iOS-SDK'
  5. Guarde y cierre el Podfile.
  6. Descargue e instale el SDK de Marketo iOS. $ pod install
  7. Abra el espacio de trabajo en Xcode. $ open App.xcworkspace

Instalación de Framework mediante el Administrador de paquetes Swift

  1. Seleccione el proyecto desde el Navegador de proyectos y en "Añadir dependencia del paquete", haga clic en "+" como se muestra a continuación:

    Agregar dependencia

  2. Agregue el paquete Marketo de este repositorio. Añada esta URL para este repositorio: https://github.com/Marketo/ios-sdk.

    URL del repositorio

  3. Ahora agregue el paquete de recursos como se muestra: Busque MarketoFramework.XCframework en el navegador de proyectos y ábralo en el buscador. Arrastre y suelte MKTResources.bundle para copiar recursos del paquete.

Configurar encabezado de puente de Swift

  1. Vaya a Archivo > Nuevo > Archivo y seleccione "Archivo de encabezado".

    Seleccionar Archivo de encabezado

  2. Asigne un nombre al archivo "<ProjectName>-Bridging-Header".

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

    Fases de compilación

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

  1. 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>
    
  2. 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.

Objetivo 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. Reemplace munkinAccountId y secretKey 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

  1. Seleccione Proyecto > Target > Información > Tipos de URL.
  2. Agregar identificador: $
  3. Establecer esquemas de URL: mkto-<Secret Key_>
  4. Incluir aplicaciónsourceApplication en el archivo AppDelegate.m (Objective-C)

Administrar el tipo de URL personalizada en AppDelegate

Objetivo 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)
    }

Cómo instalar el SDK de Marketo en Android

Prerrequisitos

  1. Agregar una aplicación al administrador de Marketo (obtener la clave secreta de la aplicación y el identificador de Munchkin)
  2. Configurar notificaciones push (opcional)
  3. 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'

  1. El archivo raíz build.gradle debe tener

    code language-none
    buildscript {
        repositories {
            google()
            mavenCentral()
        }
    
  2. 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

  1. 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");
    
  2. 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

  1. Integre el SDK Android de Marketo más reciente en la aplicación Android.  Los pasos están disponibles en GitHub.

  2. Configure la aplicación Firebase en la consola de Firebase.

    1. Crear/agregar un proyecto en 🔗consola Firebase.

      1. En la consola de Firebase, seleccione Add Project.
      2. Seleccione el proyecto GCM de la lista de proyectos existentes de Google Cloud y seleccione Add Firebase.
      3. En la pantalla de bienvenida de Firebase, seleccione Add Firebase to your Android App.
      4. Proporcione el nombre del paquete y SHA-1, y seleccione Add App. Se ha descargado un nuevo archivo de google-services.json para la aplicación Firebase.
      5. Seleccione Continue y siga las instrucciones detalladas para agregar el complemento de Google Services en Android Studio.
    2. Vaya a "Configuración del proyecto" en Información general del proyecto

      1. Haga clic en la pestaña General. Descargue el archivo "google-services.json".
      2. 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.
    3. Configuración de cambios de FCM en la aplicación de Android

      1. Cambie a la vista Proyecto en Android Studio para ver el directorio raíz del proyecto

        1. Mueva el archivo "google-services.json" descargado al directorio raíz del módulo de la aplicación de Android

        2. 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'
            }
          }
          
        3. 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'
          
        4. Finalmente, haga clic en "Sincronizar ahora" en la barra que aparece en el ID

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