Cordova API를 참조하는 콘텐츠 보기 또는 웹 오버레이에 대한 원본 HTML 콘텐츠를 만듭니다.
요구 사항
사전 지식
- AEM Mobile 이해
- 온디맨드 포털을 통한 콘텐츠 제작 및 게시 관련 지식
- Adobe Mobile Services SDK 관련 지식
요구 제품
- AEM Mobile
소개
AEM Mobile 앱에서 Mobile Services SDK를 사용하는 방법에 대해 학습합니다. 예를 들어 HTML 아티클의 분석 데이터가 AEM Mobile 앱에서 추적되는 방식을 구성할 수 있습니다.
AEM Mobile에서 Mobile Services SDK 활성화
AEM Mobile은 Cordova 프레임워크를 활용하여 Adobe Mobile Services SDK를 통합하므로 Mobile Services SDK를 사용하려면 Cordova 활성화를 위한 전체 워크플로를 수행해야 합니다.
-
다음 줄을 추가하십시오.
<script type=”text/javascript” src=”cordova.js”></script>
참고:Mobile Services SDK를 참조할 필요는 없습니다. AEM Mobile에서 Cordova를 참조하면 Mobile Services SDK 구성 요소가 자동으로 로드됩니다.
-
Mobile Services SDK를 사용하는 각각의 아티클에 대해 온디맨드 서비스에서 콘텐츠 속성을 편집하고 “확장 기능 활성화” 옵션을 선택합니다.
참고:프로젝트 설정을 변경하여 모든 신규 아티클에서 기본적으로 이 기능이 활성화되도록 할 수 있습니다. 이렇게 하려면 온디맨드 서비스에서 프로젝트 설정을 편집하고 “콘텐츠” 탭의 “확장 기능 활성화” 옵션을 선택합니다.
-
해당 프로젝트에 대한 비-Preflight 활성 앱을 빌드합니다.
앱 스토어의 AEM Mobile Preflight 앱이나 사용자 정의 Preflight 앱 모두 Mobile Services SDK에서 작동하지 않습니다.
Mobile Services SDK 사용
Mobile Services SDK는 전역 ADB 오브젝트를 정의합니다. 다양한 속성 및 기능에 대한 전체 목록은 이 문서의 후반부에 있는 “플러그인 방식”을 참조하십시오.
Mobile Services SDK는 Cordova 플러그인을 통해 AEM Mobile의 iOS 및 Android 모두에서 사용할 수 있습니다.
Mobile Services SDK에서 전송된 데이터가 보고서 세트에 표시되기까지는 한 시간 정도 소요될 수 있다는 점을 참고하십시오.
예: 추적 상태
HTML 콘텐츠의 사용자 정의 추적 상태에 대한 데이터는 다음 위치에 표시됩니다.
- Adobe Mobile Services: 사용 > 경로 보기
- Adobe Analytics: 페이지 보기
사용자 정의 상태를 추적하려면 ADB.trackState(stateName, cData, successCallback, errorCallback) 기능을 사용하십시오.
- stateName: 이는 사용자 정의 상태의 이름이며 Mobile Services 및 Analytics 모두에 의해 자동으로 선정됩니다.
- cData: 이는 이 상태와 연계된 사용자 정의 JSON 데이터이며 저장되지는 않지만 기본적으로 자동 선정됩니다. evars 및 props를 맞춤화해야 합니다.
- successCallback: 이는 trackState()가 성공하는 경우 실행되는 콜백 기능입니다.
- errorCallback: 이는 trackState()가 실패하는 경우 실행되는 콜백 기능입니다.
// waits for the "deviceready" event,
// this will be triggered once Cordova is loaded
document.addEventListener('deviceready', function() {
// specifies the custom state and data,
// this can be simulated via <input>
var strCustomStateName = 'homePage';
var objStateData = {
isAuthenticated: true,
uuId: 'afa43b87-876a-49b9-919d-064e7bb722f2'
};
// uses the Mobile Services SDK to track the custom state
ADB.trackState(strCustomStateName, objStateData,
function() { // success callback
console.log('successfully tracked state: ' + strCustomStateName);
}, function() { // error callback
console.log('failed to track state: ' + strCustomStateName);
}
);
}, false);