Show Menu
화제×

시간 작업

시간 작업을 사용하면 작업의 시작과 끝 사이의 인앱 시간 및 총 시간을 측정할 수 있습니다. SDK는 각 세션에서 시간의 길이를 계산하고 작업 완료까지 걸리는 총 시간을 모든 세션에 걸쳐 계산합니다. 시간 작업을 사용하여 세그먼트를 정의하고 구매, 전달 수준, 체크아웃 플로우 등에 걸리는 시간을 비교할 수 있습니다.
시간 작업에 대해 보고되는 지표는 다음과 같습니다.
  • 전체 세션 시작 및 종료 사이의 총 인앱 시간(초)
  • 시작 및 종료 간 총 클록 시간 (초)
콜백을 선택적으로 사용하면 시간 작업이 완료될 때 추가 작업을 실시할 수 있습니다.
  • 코드 및 임의의 논리를 실행합니다. 이때 논리는 기간 결과를 기반으로 하는 사용자 지정 논리 옵션입니다.
  • 지속 시간을 전달하기 전에 컨텍스트 데이터를 추가합니다.
  • 아직 전송하지 않은 히트와 기간을 취소합니다.

시간 작업 추적

  1. 프로젝트에 라이브러리를 추가하고 라이프사이클을 구현합니다.
    자세한 내용은 핵심 구현 및 라이프사이클 에서 IntelliJ IDEA 또는 Eclipse 프로젝트에 SDK 및 구성 파일 추가 ​를 참조하십시오.
  2. 라이브러리를 가져옵니다:
    import com.adobe.mobile.*;
    
    
  3. trackTimedActionStart 를 호출하고 시간 작업의 이름과 컨텍스트 데이터 옵션을 제공합니다.
    HashMap cdata = new HashMap<String, Object>(); 
    cdata.put("ExperienceName", experience); 
    Analytics.trackTimedActionStart("TimeUntilPurchase", cdata);
    
    
  4. (선택 사항) 언제든지 시간 작업 이름으로 trackTimedActionUpdate 를 호출하여 컨텍스트 데이터를 추가할 수 있습니다.
    HashMap cdata = new HashMap<String, Object>(); 
    cdata.put("myapp.ImageLiked", imageName); 
    Analytics.trackTimed​ActionUpdate("TimeUntilPurchase", cdata);
    
    
  5. 이벤트가 완료되면 trackTimedActionEnd 를 호출하고 시간 작업의 이름과 TimedActionBlock (콜백)을 전달하여 모든 데이터를 조회하고 지속 시간을 계산합니다.
    Analytics.trackTimedActionEnd("TimeUntilPurchase", cdata);
    
    
    시간 이벤트 지표는 자동 보고를 위해 모바일 솔루션에 저장됩니다.

추가 데이터 보내기

시간 작업 이름 외에도 작업 시작 및 작업 업데이트 호출로 추가 컨텍스트 데이터를 전송할 수 있습니다.
HashMap cdata = new HashMap<String, Object>(); 
cdata.put("myapp.ImageLiked", imageName); 
Analytics.trackTimed​ActionUpdate("TimeUntilPurchase", cdata);

컨텍스트 데이터 값은 Adobe Mobile Services에서 사용자 지정 변수에 매핑되어야 합니다.

// Timed Action Start Example 
HashMap cdata = new HashMap<String, Object>(); 
cdata.put("ExperienceName", experience); 
Analytics.trackTimedActionStart("TimeUntilPurchase", cdata); 
 
// Timed Action Update Example 
cdata = new HashMap<String, Object>(); 
cdata.put("ImageLiked", imageName); 
Analytics.trackTimed​ActionUpdate("TimeUntilPurchase", cdata); 
 
// Timed Action End Example 
Analytics.trackTimedActionEnd("TimeUntilPurchase", null); 
 
// Timed Action End Example with Callback 
Analytics.trackTimedActionEnd("TimeUntilPurchase", new Analytics.TimedActionBlock<Boolean>() { 
 @Override 
 public Boolean call(long inAppDuration, long totalDuration, Map<String, Object> contextData) { 
  contextData.put("PurchaseItem", "Item453"); 
  return true; // return true to send the hit, false to cancel 
 } 
});