インストール
Marketo Mobile SDK のインストール手順です。プッシュ通知やアプリ内メッセージを送信するには、以下の手順が必要です。
iOS への Marketo SDK のインストール
前提条件
- Marketo Admin でアプリケーションを追加(アプリケーションの秘密鍵と Munchkin ID を取得)
- プッシュ通知を設定(オプション)
CocoaPods 経由のフレームワークのインストール
- CocoaPods をインストールします。
$ sudo gem install cocoapods
- ディレクトリをプロジェクトディレクトリに変更し、スマートデフォルトを使用して Podfile を作成します。
$ pod init
- Podfile を開きます。
$ open -a Xcode Podfile
- Podfile に次の行を追加します。
$ pod 'Marketo-iOS-SDK'
- Podfile を保存して閉じます。
- Marketo iOS SDK をダウンロードしてインストールします。
$ pod install
- Xcode でワークスペースを開きます。
$ open App.xcworkspace
Swift パッケージマネージャーを使用したフレームワークのインストール
-
プロジェクトナビゲーターからプロジェクトを選択し、「パッケージの依存関係を追加」の下にある「+」をクリックします(以下を参照)。
-
このリポジトリから Marketo パッケージを追加します。このリポジトリの URL(https://github.com/Marketo/ios-sdk)を追加します。
-
ここで、次のようにリソースバンドルを追加します。プロジェクトナビゲーターで
MarketoFramework.XCframework
を見つけて、Finder で開きます。MKTResources.bundle
をドラッグ&ドロップして、バンドルリソースをコピーします。
Swift ブリッジングヘッダーの設定
-
ファイル/新規/ファイルに移動し、「ヘッダーファイル」を選択します。
-
ファイルに「<ProjectName>-Bridging-Header」という名前を付けます。
-
プロジェクト/ターゲット/ビルドフェーズ/Swift コンパイラー/コード生成に移動します。Objective-Bridging ヘッダーに次のパスを追加します。
$(PODS_ROOT)/<_ProjectName_>-Bridging-Header.h
SDK の初期化
Marketo iOS SDK を使用する前に、Munchkin アカウント ID とアプリ秘密鍵を使用して初期化する必要があります。これらは、「モバイルアプリとデバイス」の下にある Marketo Admin 領域にあります。
-
AppDelegate.m ファイル(Objective-C)またはブリッジングファイル(Swift)を開き、Marketo.h ヘッダーファイルを読み込みます。
code language-none #import <MarketoFramework/MarketoFramework.h>
-
次のコードを
application:didFinishLaunchingWithOptions
: 関数内にペーストします。Native アプリのフレームワークタイプとして "native" を渡す必要があります。
code language-none |
---|
|
code language-none |
---|
|
- 上記の
munkinAccountId
とsecretKey
を、Marketo Admin/モバイルアプリとデバイス セクションにある「Munchkin アカウント ID」と「秘密鍵」を使用して置き換えます。
iOS テストデバイス
- プロジェクト/ターゲット/情報/URL タイプを選択します。
- ${PRODUCT_NAME} 識別子を追加します。
- URL スキーム
mkto-<Secret Key_>
を設定します。 - AppDelegate.m ファイルにアプリケーション sourceApplication を含めます(Objective-C)。
AppDelegate でカスタム URL タイプを処理する
code language-none |
---|
|
code language-none |
---|
|
Android に Marketo SDK をインストールする方法
前提条件
- Marketo Admin でアプリケーションを追加(アプリケーションの秘密鍵と Munchkin ID を取得します)
- プッシュ通知を設定(オプション)
- Android 用 Marketo SDK をダウンロード
Gradle を使用した Android SDK の設定
1.アプリケーションレベルの build.gradle ファイルの依存関係セクションに以下を追加します。
implementation 'com.marketo:MarketoSDK:0.8.9'
-
ルートの
build.gradle
ファイルには、次の操作を実行します。code language-none buildscript { repositories { google() mavenCentral() }
-
プロジェクトを Gradle ファイルと同期します。
権限の設定
AndroidManifest.xml
を開き、次の権限を追加します。アプリでは、「INTERNET」および「ACCESS_NETWORK_STATE」権限をリクエストする必要があります。アプリで既にこれらの権限をリクエストしている場合は、この手順をスキップしてください。
<uses‐permission android:name="android.permission.INTERNET"></uses‐permission>
<uses‐permission android:name="android.permission.ACCESS_NETWORK_STATE"></uses‐permission>
SDK の初期化
-
アプリで Application クラスまたは Activity クラスを開き、setContentView の前またはアプリケーションコンテキスト内で Marketo SDK をアクティビティに読み込みます。
code language-java // Initialize Marketo Marketo marketoSdk = Marketo.getInstance(getApplicationContext()); marketoSdk.initializeSDK("native","munchkinAccountId","secretKey");
-
ProGuard 構成(オプション)
アプリに ProGuard を使用している場合は、
proguard.cfg
ファイルに次の行を追加します。ファイルは、プロジェクトフォルダー内にあります。このコードを追加すると、Marketo SDK が不明化プロセスから除外されます。code language-none -dontwarn com.marketo.* -dontnote com.marketo.* -keep class com.marketo.`{ *; }
Android テストデバイス
アプリケーションタグ内の AndroidManifest.xml
ファイルに「MarketoActivity」を追加します。
<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 サポート
Android 向け MME Software Development Kit(SDK)は、Android アプリデベロッパー向けの柔軟性と新しいエンジニアリング機能を備えた、より最新で安定したスケーラブルなフレームワークに更新されました。
この SDK では、Android アプリデベロッパーが Google の Firebase Cloud Messaging(FCM)を直接使用できるようになりました。
アプリケーションへの FCM の追加
-
最新の Marketo Android SDK を Android アプリに統合します。手順は GitHub で確認できます。
-
Firebase コンソールで Firebase アプリを設定します。
-
でのプロジェクトの作成/追加 Firebase コンソール。
- Firebase コンソールで、
Add Project
を選択します。 - 既存の Google Cloud プロジェクトのリストから GCM プロジェクトを選択し、
Add Firebase
を選択します。 - Firebase のスタートアップスクリーンで、
Add Firebase to your Android App
を選択します。 - パッケージ名と SHA-1 を入力し、
Add App
を選択します。Firebase アプリの新しいgoogle-services.json
ファイルがダウンロードされます。 Continue
を選択し、Android Studio に Google サービスプラグインを追加する詳細な手順に従います。
- Firebase コンソールで、
-
プロジェクトの概要の「プロジェクト設定」に移動
- 「一般」タブをクリックします。「google-services.json」ファイルをダウンロードします。
- 「Cloud Messaging」タブをクリックします。 「サーバーキー」と「送信者 ID」をコピーします。これらの「サーバーキー」と「送信者 ID」を Marketo に指定します。
-
Android アプリで FCM 変更を設定します
-
Android Studio のプロジェクトビューに切り替えて、プロジェクトのルートディレクトリを確認します
-
ダウンロードした「google-services.json」ファイルを Android アプリモジュールのルートディレクトリに移動します。
-
プロジェクトレベルの build.gradle に次を追加します。
code language-none buildscript { dependencies { classpath 'com.google.gms:google-services:4.0.0' } }
-
アプリレベルの build.gradle に以下を追加します。
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'
-
最後に、ID に表示されるバーの「今すぐ同期」をクリックします。
-
-
-
アプリのマニフェストを編集します。FCM SDK では、必要なすべての権限と必要な受信者機能が自動的に追加されます。アプリのマニフェストから次の古い(メッセージの重複を引き起こす可能性があるので、潜在的に有害な)要素を削除します
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>
-