2016-08-02 4 views
9

google-analytics SDK를 사용하여 Android 앱 체크 아웃 실적을 측정하고 있습니다. 나는 히트 (그리고 그것이 작동한다)와 예외 (그것도 잘 작동한다)를 보내기 위해 내가 사용하는 래퍼를 만들었다. 전자 상거래 데이터로는 작동하지 않을 수 있습니다.Android 고급 전자 상거래 분석 페이지에 누락 된 데이터

나는 제품의 본체에있어서 지금

public void sendEcommerceCheckoutStep(Product product, ProductAction productAction, String checkoutStepName, Context context) { 
     HitBuilders.ScreenViewBuilder builder = new HitBuilders.ScreenViewBuilder() 
       .addProduct(product) 
       .setProductAction(productAction) 
       .addImpression(product, checkoutStepName); 

     mTracker.setScreenName(checkoutStepName); 
     mTracker.send(builder.build()); 
     mTracker.setScreenName(null); 
    } 

상기

Product product = new Product() 
      .setId(ID) 
      .setCategory(category) 
      .setBrand(brandID) 
      .setCustomDimension(1, typology) 
      .setCustomDimension(2, currency) 
      .setPrice(getTotal()) 
      .setQuantity(1); 
    // Add the step number and additional info about the checkout to the action. 
    ProductAction productAction = new ProductAction(ProductAction.ACTION_PURCHASE) 
      .setCheckoutStep(4) 
      .setCheckoutOptions("Perform payment"); 

하고

sendEcommerceCheckoutStep(product, productAction, "performPayment", getApplicationContext())

productAction을 만들 상거래 데이터를 전송하기 위해, 나는 데이터가 분석을 통해 흐를 것으로 기대한다. adb 로그를 ecked)하지만 analytics 웹 인터페이스에서는 볼 수 없습니다.

이 내가 분석 웹 인터페이스에 표시되는 내용입니다 :

Google Analytics view of e-commerce

데이터를 가지고있는 유일한 열이 "장바구니 - 세부 정보 비율"하나 볼 수 있듯이. 그러나 다른 열에 데이터가없는 경우 장바구니 - 세부 환율을 어떻게 사용할 수 있습니까?

이것은 "제품 성능"화면이었습니다. 이것은 "제품 목록 성능"입니다 :

produce list performance

다른 모든 열뿐만 아니라 0이다. "장바구니에 추가"작업이 나열되었지만 다른 작업은 나열되지 않은 이유는 무엇입니까?

+0

각 제품의 화면 이름을 설정하는 대신 이벤트 사용 – HourGlass

+0

전자 상거래 용 제품 및 ProductAction을 사용하려면 ScreenViewBuilder를 사용해야합니다. https://developers.google.com/analytics/devguides/collection/android/v4/enhanced-ecommerce –

+0

좋아, 무슨 뜻인지 알 겠어. 내가 HitBuilders.EventBuilder 빌더 = 새 HitBuilders.EventBuilder와 시도() .addProduct (제품) .setProductAction (productAction) .addImpression (product, checkoutStepName); 하지만 여전히 전자 상거래 탭에서 분석을 얻지는 못합니다. –

답변

1

다음 코드는 내 응용 프로그램에서 작동됩니다. 나는 official transaction guide을 따라 갔다.

나는 당신과 약간의 차이점을 발견했습니다. 예 : 화면 이름의 이름은 나중에 null로 설정하지 않습니다. 체크 아웃 단계를 설정하지 않고 맞춤 측정 기준이나 노출 수를 설정하지 않습니다.

를 자유롭게 사용해

public void trackPurchase(@NonNull TrackingPurchase trackingPurchase) { 
    HitBuilders.ScreenViewBuilder builder = new HitBuilders.ScreenViewBuilder(); 

    for (TrackingProduct trackingProduct : trackingPurchase.getTrackingProducts()) { 
     builder.addProduct(this.createProduct(trackingProduct)); 
    } 
    builder.setProductAction(this.createProductAction(trackingPurchase)); 

    googleAnalyticsTracker.setScreenName("transaction"); 
    googleAnalyticsTracker.set("&cu", "USD"); 
    googleAnalyticsTracker.send(builder.build()); 
} 

@NonNull 
private Product createProduct(@NonNull TrackingProduct trackingProduct) { 
    return new Product() 
      .setId(trackingProduct.getSku()) 
      .setName(trackingProduct.getName()) 
      .setCategory(trackingProduct.getCategory()) 
      .setPrice(trackingProduct.getPrice()) 
      .setQuantity(trackingProduct.getQuantity()); 
} 

@NonNull 
private ProductAction createProductAction(@NonNull TrackingPurchase trackingPurchase) { 
    return new ProductAction(ProductAction.ACTION_PURCHASE) 
      .setTransactionId(trackingPurchase.getSaleId()) 
      .setTransactionAffiliation("Android App") 
      .setTransactionRevenue(trackingPurchase.getRevenue()) 
      .setTransactionTax(0) 
      .setTransactionShipping(trackingPurchase.getShippingCost()) 
      .setTransactionCouponCode(trackingPurchase.getCouponCode()); 
} 

TrackingPurchase은 추적 할 데이터가있는 다양한 TrackingProduct를 포함하는 클래스입니다.

나는이 여기에 확인하여 추적 볼 수 있습니다 : 예를 들어, 매출과 베스트 셀러를 볼 수

Google Analytics Ecommerce

.

+0

고맙습니다. 페르난도. 나는 당신의 코드를 사용해 보았지만, 전자 상거래를 통해 데이터가 흐르지는 않았다. : - / –