설치
Marketo Mobile SDK을 설치 및 초기화하여 푸시 알림, 인앱 메시지 또는 둘 다를 전송합니다.
iOS에 Marketo SDK 설치
사전 요구 사항
- Marketo 관리자에서 응용 프로그램을 추가하고 응용 프로그램 비밀 키 및 Munchkin ID를 가져옵니다.
- 선택 사항: 푸시 알림 설정.
CocoaPod를 통해 프레임워크 설치
- CocoaPod를 설치합니다.
$ 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 패키지 관리자를 사용하여 프레임워크 설치
-
프로젝트 탐색기에서 프로젝트를 선택합니다. "패키지 종속성 추가"에서 '+'를 선택합니다.
-
https://github.com/Marketo/ios-sdk에서 Marketo 패키지를 추가합니다.
-
리소스 번들을 추가합니다. Project Navigator에서
MarketoFramework.XCframework을(를) 찾아 Finder에서 엽니다.MKTResources.bundle을(를) 끌어 번들 리소스를 복사합니다.
Swift 브리징 헤더 설정
-
파일 > 새로 만들기 > 파일로 이동하고 "헤더 파일"을 선택합니다.
-
파일 이름을 "<ProjectName>-Bridging-Header"로 지정합니다.
-
프로젝트 > Target > 빌드 단계 > Swift 컴파일러 > 코드 생성으로 이동합니다. Objective-Bridging 헤더에 다음 경로를 추가합니다.
$(PODS_ROOT)/<_ProjectName_>-Bridging-Header.h
SDK 초기화
Munchkin 계정 ID 및 앱 비밀 키로 Marketo iOS SDK을 초기화합니다. Marketo 관리자의 "모바일 앱 및 장치"에서 두 값을 모두 찾습니다.
-
Objective-C에 대한 AppDelegate.m 파일 또는 Swift에 대한 브리징 파일을 엽니다. Marketo.h 헤더 파일을 가져옵니다.
code language-none #import <MarketoFramework/MarketoFramework.h> -
application:didFinishLaunchingWithOptions내에 다음 코드를 붙여넣습니다. 함수.기본 앱의 프레임워크 유형으로 "native"를 전달합니다.
| code language-objectivec |
|---|
|
| code language-swift |
|---|
|
munkinAccountId및secretKey을(를) Marketo Admin > Mobile Apps and Devices에서 “Munchkin 계정 ID” 및 "비밀 키"로 바꾸십시오.
iOS 테스트 장치
- [프로젝트] > [Target] > [정보] > [URL 유형]을 선택합니다.
- 식별자 ${PRODUCT_NAME}을(를) 추가합니다.
- URL 체계를
mkto-<Secret Key_>(으)로 설정합니다. - Objective-C에 대한 AppDelegate.m 파일에 applicationsourceApplication을(를) 추가합니다.
AppDelegate에서 사용자 지정 Url 유형 처리
| code language-objectivec |
|---|
|
| code language-swift |
|---|
|
Android에 Marketo SDK을 설치하는 방법
사전 요구 사항
- Marketo 관리자에서 응용 프로그램을 추가하고 응용 프로그램 비밀 키 및 Munchkin ID를 가져옵니다.
- 선택 사항: 푸시 알림 설정.
- Android용 Marketo SDK 다운로드
Gradle로 Android SDK 설정
-
애플리케이션 수준의 build.gradle 파일에서 dependencies 섹션 아래에 종속성을 추가합니다.
implementation 'com.marketo:MarketoSDK:0.8.9' -
루트
build.gradle파일에 다음 구성을 추가하십시오.code language-none buildscript { repositories { google() mavenCentral() } -
프로젝트를 Gradle 파일과 동기화합니다.
권한 구성
AndroidManifest.xml을(를) 열고 다음 권한을 추가합니다. 앱에서 “인터넷” 및 “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 클라우드 메시징 지원
Android용 MME SDK은 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” 파일을 다운로드합니다.
- ‘클라우드 메시징’ 탭을 클릭합니다. ‘서버 키’ 및 '보낸 사람 ID’를 복사합니다. Marketo에 이러한 ‘서버 키’ 및 '보낸 사람 ID’를 제공하십시오.
-
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에 나타나는 막대에서 Sync now을(를) 선택합니다
-
-
-
앱 매니페스트를 편집합니다. 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>
-