Dianping 주문 앱 개발 과정에서 데이터 수집 경험 공유

巴扎黑
풀어 주다: 2017-05-21 16:03:09
원래의
2374명이 탐색했습니다.

요약: 미니 프로그램 개발 경험과 그 과정에서 겪게 되는 "피트"는 빅데이터 시대의 미니 프로그램 개발 경험에 대한 우리 팀의 이전 시리즈 기사에서 거의 소개되었습니다. 제품의 성공이나 실패를 위해서는 많은 양의 데이터를 분석하고 검증해야 합니다. 이번 호에서는 WeChat 미니 프로그램이 어떻게...

미니 프로그램 개발 경험과 과정에 대해 " 우리 팀이 직면한 '피트'는 이전 소규모 프로그램 개발 경험에 대한 기사 시리즈에서 소개되었습니다. 빅 데이터 시대에는 제품의 성공과 실패를 분석하고 검증하기 위해 많은 양의 데이터가 필요합니다. 이번 호에서는 WeChat 미니 프로그램이 어떻게 데이터를 수집하고 분석하는지, 물론 그 과정에 "구덩이"가 있는지 살펴보겠습니다.

이 기사의 일부 예는 "Dianping Ordering" 미니 프로그램의 메뉴 페이지에서 가져온 것입니다.

저자 소개: Zou Gongyi, Meituan Dianping 프론트 엔드 엔지니어, 웹 프론트 엔드 개발 경력 4년, 현재 Meituan Dianping 다이닝 팀의 일원이 되어 보세요.


모든 내용은 2017년 3월 2일 기준 오늘 기준 공식 APIWeChat 공식 컬렉션 플랫폼 소개

WeChat 미니 프로그램 공개 플랫폼 현재 사용 가능합니다. 공식적인 데이터 수집 및 분석 플랫폼이 개발되었습니다.
공식 API: https://mp.weixin.qq.com/debug/wxadoc/analytic/index.html?t=201726
현재 미니 프로그램의 공개 베타 버전에 대해 공식에서는 다음을 제공합니다. 데이터 분석:

  • 개요: 미니 프로그램 개발 개요를 빠르게 이해할 수 있도록 미니 프로그램 핵심 지표 동향 및 상위 페이지 액세스 데이터를 제공합니다. (수동 구성 없음; 필수, 공식 기본 컬렉션 )

  • 접속 분석: 미니 프로그램 사용자 접속 소스, 규모, 빈도, 기간, 깊이, 페이지 세부 정보 등의 데이터를 제공하고 사용자 추가를 구체적으로 분석합니다. (수동 구성 불필요, 공식 기본 수집)

  • 실시간 통계: 실시간으로 데이터에 액세스할 수 있는 소규모 프로그램을 제공합니다. 시간 모니터링 필요 (수동 구성 불필요, 공식 기본 수집)

  • 맞춤형 분석: 맞춤 보고 구성, 미니 프로그램 내에서 사용자 행동을 세밀하게 추적 및 수행 사용자 속성, 시스템 속성, 이벤트 속성을 기반으로 한 유연한 다차원 분석으로 미니 프로그램의 맞춤형 분석 요구 사항을 충족합니다 (내부에서 사용하려면 별도의 권한 신청이 필요합니다). 🎜>

구체적인 자료는 미니프로그램 관리자 계정으로 로그인 후 https://mp.weixin.qq.com을 통해 보실 수 있습니다. .

처음 세 가지 방법은 작은 프로그램에 의해 자동으로 수집되며 개발자가 수동으로 작업할 필요가 없습니다. WeChat 공식 문서 I에 자세히 설명되어 있습니다. 더 자세히 설명하지 않겠습니다

이 글은 주로 "Dianping Ordering" 애플릿을 결합하여 네 번째 유형인 사용자 정의 분석이 수행할 수 있는 작업을 살펴보겠습니다.

맞춤형 분석

맞춤형 분석은 전통적인 의미에서 숨겨진 포인트입니다. 사용자는 보고하려는 데이터를 설정하고 이러한 데이터를 사용하여 원하는 결과를 분석할 수 있습니다. .

WeChat의 공식 맞춤형 분석은 인기 있는 No-Buried Point 기술을 사용합니다. 앵커 포인트는 WeChat 배경을 통해 구성되어 실시간으로 고객에게 전달됩니다. 코드에 수동으로 매장 코드를 추가할 필요가 없으며, 미니 프로그램 릴리스에 대한 감사 메커니즘이 있기 때문에 한 번 수동으로 포인트를 매장하면 다시 검토해야 하므로 비용이 매우 많이 듭니다. 따라서 비매설 기술의 사용은 소규모 프로그램 시나리오에 매우 적합합니다.

그러나 현재 "Dianping Ordering" 애플릿 테스트에서 사용자 정의 분석의 현재 내부 베타 버전(2017년 3월 2일 기준)에서는 디자인 및 작성에 대한 요구 사항을 비교합니다. 가혹한 데이터 수집은 페이지의 데이터와 연결되어야 하며 일부 시나리오에서는 만족하기 어려울 수 있습니다.

다음으로 사용자 정의 이벤트를 구현하는 단계를 살펴보겠습니다.

1. 먼저 관리자를 사용합니다. 본인의 계정으로 퍼블릭 플랫폼 백엔드에 로그인하여 맞춤형 분석을 찾아보세요(앞서 말씀드린 것처럼 별도로 신청해야 하며, 그렇지 않으면 입구가 보이지 않습니다)

Dianping 주문 앱 개발 과정에서 데이터 수집 경험 공유


2. 처음 사용하는 경우 이벤트 추가를 클릭하고 이벤트 이름을 중국어와 영어로 입력하세요.

Dianping 주문 앱 개발 과정에서 데이터 수집 경험 공유


3. 다음으로 가장 중요한 이벤트 구성입니다

Dianping 주문 앱 개발 과정에서 데이터 수집 경험 공유


동작의 의미는 다음과 같습니다. (WeChat 미니 프로그램 공식 API에서 재인쇄)
트리거, 트리거 조건:

클릭하면 페이지와 요소
enterPage를 지정해야 페이지에 들어갈 수 있습니다.
leavePage를 지정해야 합니다.페이지를 떠날 때 트리거됩니다
pullDownRefresh를 지정해야 합니다. 풀다운 새로 고침 시 페이지
실행을 지정해야 합니다. 미니 프로그램을 로드할 때 트리거됩니다
백그라운드로 전환할 때 트리거됩니다
포그라운드가
공유할 때 트리거를 트리거합니다. 🎜>

액션 트리거가 발생했을 때의 액션입니다. 기본적으로 시스템 기본 데이터와 사용자 정의 데이터(데이터 정의)를 포함한 데이터가 수집됩니다.

비어 있으면 데이터만 수집합니다.

start는 데이터를 초기화하고 수집합니다.
report는 데이터를 수집하고 이벤트 데이터를 보고합니다.
start_and_report는 데이터를 초기화하고 수집합니다.

참고: 각 보고 전에 시작 작업이 있어야 합니다. 시작 작업이 없으면 보고되지 않습니다. 액션의 경우 start_and_report가 설정되고 클릭 트리거 조건이 지정되면 타이밍은 다음과 같습니다.

클릭 이벤트 -> - >보고

페이지/색인/색인, 페이지/목록/목록과 같은 페이지 실행 페이지, 이 규칙은 미니 프로그램 앱의 페이지 필드와 일치합니다. .json, 페이지를 트리거해야 하는 경우 ANY_PAGE를 입력하세요. 요소 트리거된 요소는 '.' 또는 '#'으로 시작해야 하는 1단계 CSS ID 및 클래스 선택기를 지원합니다.
data 0부터 여러 항목까지 수집된 맞춤 데이터, 각 항목은 모두 "필드 이름 및 필드 값" 형식이며, 작성하지 않으면 시스템 데이터만 수집됩니다.

필드 이름: 이벤트의 필드 이름

필드 값: 이벤트에서 이 필드의 데이터 값, 변수 이름을 입력합니다. 페이지(즉, 페이지 인스턴스 데이터 필드)에서 페이지의 변수를 수집할 수 있습니다. 데이터가 배열(예: list[].id)의 특정 데이터 항목을 수집하는 경우 배열은 어떤 NodeList에 따라 결정됩니다. 현재 트리거 요소는 클래스에 의해 획득됩니다.

또한 "$"로 시작하는 일부 제공된 시스템 속성을 채울 수도 있습니다. 현재 다음 속성이 지원됩니다.

$PAGE_TIME 사용자가 이 페이지에 진입한 시점부터 현재 시간(액션이 실행된 시점)

$APP_TIME 사용자가 미니 프로그램에 진입한 시점부터 현재 시간까지의 시간 (액션이 실행된 시간)
$CURRENT_PAGE 현재 사용자 현재 페이지
$LAST_PAGE 이전 페이지

참고: 데이터가 비어 있을 경우 이벤트 보고서는 시스템 기본 필드에서만 데이터를 수집합니다.

———————————————————————————————————

앞서 언급한 "Dianping Dianping" 미니 프로그램에서 특정 시나리오에서 수집 요구 사항을 충족하기 어려운 이유는 빨간색으로 표시한 데이터 값에 대한 설명에 주의하세요.

우선 이번 이벤트까지 마무리하고, 이 데이터피트에 대한 이야기는 나중에 다시 찾아뵙겠습니다.

4. 모든 구성이 완료되면 필드 확인을 클릭하고 일부 필드 설명을 입력한 후 저장 및 테스트를 클릭하고 개발자를 선택하고 다음을 클릭합니다. WeChat을 사용하여 미니 프로그램에 들어갈 수 있습니다. 미니 프로그램에서 방금 구성한 .add 클래스에 해당하는 돔을 클릭한 후 방금 클릭한 페이지로 돌아가서 점으로 표시된 데이터(아래 그림의 어린이 및 ID)를 볼 수 있습니다. ) 앞서 설정한 필드입니다.)

Dianping 주문 앱 개발 과정에서 데이터 수집 경험 공유


Dianping 주문 앱 개발 과정에서 데이터 수집 경험 공유


Dianping 주문 앱 개발 과정에서 데이터 수집 경험 공유


5. 알았어 여기 we go 지금까지 이벤트 생성이 완료되었습니다. "pit"

다음으로 방금 언급한 데이터의 값으로 돌아가서 이 텍스트 줄을 주의 깊게 읽으면 찾을 수 있습니다. 몇 가지 핵심 사항:

  • 값은 페이지 인스턴스의 데이터 필드만 될 수 있습니다. 즉, page.data에 없는 값은 그럴 수 없습니다.

  • 배열인 경우 클래스 선택기의 dom 인덱스 인덱스는 page.data의 배열에 해당하는 인덱스 인덱스와 같아야 합니다. 그렇지 않으면 오류가 발생합니다!

두 번째 요점은 예입니다.

Dianping 주문 앱 개발 과정에서 데이터 수집 경험 공유


메뉴 페이지의 추가 버튼은 방금 구성한 .add입니다. 목록 배열이 page.data.menuList에 있다고 가정하면 빨간색 상자는 page.data.menuList[입니다. 2 ], 인덱스 인덱스는 2
$('.add')=0의 클래스 선택기를 통해 얻은 인덱스 인덱스(처음 두 개는 매진, 없음 .add);
이때 사용자 정의 분석을 사용할 때 더하기 기호를 클릭하면 보고되는 데이터는 실제로 page.data.menuList[0]의 데이터입니다. page.data.menuList[2]가 아니므로 잘못된 데이터가 보고됩니다.
불충분:
  • 콘텐츠 및 page.data를 직접 보고 Hook, inflexible

  • dom의 인덱스는 페이지 데이터의 배열 인덱스와 정렬되어야 합니다. 일부 복잡한 경우에는 요구 사항을 충족할 수 없습니다. 저희 메뉴와 같을 겁니다. 페이지와 동일하게 플러스 표시가 나오는 조건은 매진이 아니면 인덱스 정렬이 불가능하다는 것입니다.)

    그래서 현재 커스텀 분석-내부 테스트 단계에서는 , 수집할 수 있는 데이터가 상대적으로 제한되어 있으므로, 정식 오픈 후에는 사용자 구성이 더 유연해지길 바랍니다

미니 프로그램에서 매립 포인트 요건을 실현할 수 있는 솔루션을 고민 중:

미니 프로그램은 쿠키를 지원하지 않으며, 회사의 통계 시스템 때문에 일부 데이터가 있습니다. 전송은 쿠키를 통해 구현됩니다. 앞으로는 모든 데이터를 코드에 수동으로 묻은 다음 Ajax를 통해 회사의 통계 데이터베이스로 보내는 것을 고려할 수 있습니다. 회사 자체 통계 시스템은 미니에 대한 통계를 완전히 수집합니다. 프로그램.


위 내용은 Dianping 주문 앱 개발 과정에서 데이터 수집 경험 공유의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿