Maison  >  Article  >  Applet WeChat  >  Partage d'expérience sur la collecte de données dans le processus de développement de l'application de commande Dianping

Partage d'expérience sur la collecte de données dans le processus de développement de l'application de commande Dianping

巴扎黑
巴扎黑original
2017-05-21 16:03:092334parcourir

Résumé : L'expérience du développement de mini-programmes et les « fosses » rencontrés dans le processus ont été presque introduits dans la précédente série d'articles de notre équipe sur l'expérience de développement de mini-programmes à l'ère du big data, Le succès ou l'échec d'un produit nécessite l'analyse et la vérification d'une grande quantité de données. Dans ce numéro, explorons avec vous comment sont les mini-programmes WeChat...

À propos de l'expérience et du processus de développement de mini-programmes Les « fosses » rencontrées par notre équipe ont été présentées dans la série précédente d'articles sur l'expérience de développement de petits programmes. À l'ère du big data, le succès ou l'échec d'un produit nécessite l'analyse et la vérification d'une grande quantité de données. Dans ce numéro, nous explorerons avec vous comment les mini-programmes WeChat collectent et analysent les données, et bien sûr il y a des « fosses » dans le processus.

Certains exemples de cet article proviennent de la page de menu du mini programme "Dianping Ordering".

Présentation de l'auteur : Zou Gongyi, ingénieur front-end Meituan Dianping, 4 ans d'expérience dans le développement front-end Web, maintenant Meituan Dianping Faites partie de l'équipe du restaurant.


Tout le contenu est basé sur le 2 mars 2017 L'API officielle à partir d'aujourd'huiPrésentation de la plateforme de collecte officielle WeChat

La plateforme publique du mini programme WeChat est actuellement disponible. Une plateforme officielle de collecte et d’analyse de données a été développée.
API officielle : https://mp.weixin.qq.com/debug/wxadoc/analysis/index.html?t=201726
Pour la version bêta publique actuelle du mini programme, le responsable fournit ce qui suit analyse des données :

  • Aperçu : fournit les tendances des indicateurs clés du mini-programme et les données d'accès à la première page pour comprendre rapidement l'aperçu du développement du mini-programme (Pas de configuration manuelle ; requis, collection officielle par défaut)

  • Analyse d'accès : fournit des données telles que la source d'accès des utilisateurs au mini-programme, l'échelle, la fréquence, la durée, la profondeur et les détails de la page, et fournit une analyse détaillée de ajouts et activité de nouveaux utilisateurs ; (Aucune configuration manuelle requise, collection officielle par défaut)

  • Statistiques en temps réel : fournit aux petits programmes un accès en temps réel aux données pour répondre aux besoins de surveillance en temps réel ; (Aucune configuration manuelle requise, collection officielle par défaut)

  • Analyse personnalisée : configurez des rapports personnalisés, suivez finement le comportement des utilisateurs dans le mini-programme. , et effectuez une analyse multidimensionnelle flexible basée sur les attributs de l'utilisateur, les attributs du système et les attributs d'événement. L'analyse des événements et l'analyse de l'entonnoir répondent aux besoins d'analyse personnalisée du mini-programme (à l'intérieur, vous devez demander l'autorisation séparément pour l'utiliser ; it)

Les données spécifiques peuvent être consultées via https://mp.weixin.qq.com après vous être connecté avec le mini compte d'administrateur du programme.

Les trois premières méthodes sont automatiquement collectées par de petits programmes et ne nécessitent aucune opération manuelle de la part du développeur. Elles sont expliquées en détail dans la documentation officielle de WeChat. Je ne développerai pas davantage

Cet article combine principalement l'applet « Dianping Ordering » pour examiner le quatrième type - ce que l'analyse personnalisée peut faire

Analyse personnalisée

L'analyse personnalisée est un point caché au sens traditionnel. Les utilisateurs peuvent définir les données qu'ils souhaitent rapporter et utiliser ces données pour vous analyser. résultat souhaité.

L'analyse personnalisée officielle de WeChat utilise la technologie populaire sans point enterré, qui configure les points d'ancrage via l'arrière-plan de WeChat et les envoie au client en temps réel pour prendre effet. Il n'est pas nécessaire d'ajouter manuellement du code d'enfouissement au code, et comme il existe un mécanisme d'audit pour les versions de mini-programmes, si vous enterrez manuellement un point une fois, il devra être revu à nouveau, ce qui sera très coûteux. Par conséquent, l’utilisation de la technologie sans enfouissement est très adaptée aux scénarios de petits programmes.

Cependant, d'après le test actuel de l'applet "Dianping Ordering", la version bêta interne actuelle de l'analyse personnalisée (au 2 mars 2017) compare les exigences pour la conception et l'écriture du code lui-même. Dure, la collecte de données doit être associée aux données de la page, ce qui peut être difficile à satisfaire dans certains scénarios.

Jetons ensuite un coup d'œil aux étapes de mise en œuvre d'un événement personnalisé :

1. Utilisez d'abord l'administrateur. Connectez-vous au backend de la plateforme publique avec votre compte et recherchez l'analyse personnalisée (comme mentionné précédemment, vous devez postuler séparément, sinon vous ne verrez pas l'entrée)

Partage dexpérience sur la collecte de données dans le processus de développement de lapplication de commande Dianping


2. Si vous l'utilisez pour la première fois, la liste des événements est vide. Cliquez sur Ajouter un événement et remplissez les noms chinois et anglais de l'événement

Partage dexpérience sur la collecte de données dans le processus de développement de lapplication de commande Dianping


3. Vient ensuite la configuration de l'événement la plus critique

Partage dexpérience sur la collecte de données dans le processus de développement de lapplication de commande Dianping


Le la signification des actions est la suivante : (réimprimé de l'API officielle du mini programme WeChat)
déclencheur, condition de déclenchement :
le clic se déclenche lorsque vous cliquez dessus, la page et l'élément

enterPage doivent être spécifiés pour accéder à la page Déclenché lorsque, page
leavePage doit être spécifié lorsque vous quittez la page, page
pullDownRefresh doit être spécifié. lors de l'actualisation du menu déroulant, le lancement de la page
doit être spécifié. Déclenché lors du chargement d'un mini programme
Déclenché lors du passage à l'arrière-plan
le premier plan passe au premier plan pour déclencher les
déclencheurs de partage lors du partage <.>

L'action lorsque le déclencheur d'action se produit. Les données seront collectées par défaut, y compris les données par défaut du système et les données définies par l'utilisateur (données définies dans) Vide collecte uniquement les données ;

start initialise et collecte les données ;
report collecte les données et rapporte les données d'événement

start_and_report initialise et collecte les données Rapport plus tard ; >

Remarque : Il doit y avoir une opération de démarrage avant chaque rapport. Il ne sera pas signalé sans l'opération de démarrage.
Pour une action, si start_and_report est défini et que la condition de déclenchement du clic est spécifiée, le timing est le suivant :

événement de clic -> - >report

pages déclenchées par page, telles que pages/index/index, pages/list/list, cette règle est cohérente avec le champ pages de l'application mini-programme .json, si une page doit être déclenchée, remplissez ANY_PAGE.

élément L'élément déclenché prend en charge les sélecteurs d'identifiant et de classe CSS à un niveau, qui doivent commencer par '.' ou '#'

données Données personnalisées collectées, allant de 0 à plusieurs éléments, chaque élément Ils sont tous dans le forme de « nom du champ et valeur du champ » ; s'il n'est pas renseigné, seules les données du système seront collectées.


Nom du champ : le nom du champ dans l'événement
Valeur du champ : la valeur des données de ce champ dans l'événement, remplissez le nom de la variable sur le page (c'est-à-dire le champ de données de l'instance de page), vous pouvez collecter des variables sur la page ; si data collecte un certain élément de données dans le tableau (comme list[].id), le tableau est déterminé en fonction de la NodeList la L’élément déclencheur actuel est obtenu par classe.

De plus, vous pouvez également renseigner certains attributs système fournis, commençant par « $ ». Actuellement, les attributs suivants sont pris en charge :

$PAGE_TIME Le temps entre le moment où l'utilisateur entre dans cette page et l'heure actuelle (l'heure à laquelle l'action est déclenchée)$APP_TIME Le temps entre le moment où l'utilisateur entre dans le mini programme et l'heure actuelle (l'heure à laquelle l'action est déclenchée)$CURRENT_PAGE L'utilisateur actuel La page sur laquelle vous vous trouvez$LAST_PAGE Page précédente

Remarque : les données peuvent être vides. Lorsqu'elles sont vides, le rapport d'événement ne collecte que les données des champs par défaut du système

. ————————————————————————————————————

Faites attention à l'explication sur la valeur des données que j'ai marquée en rouge. Cette valeur est la raison pour laquelle il est difficile de répondre aux besoins de collecte dans certains scénarios dans le mini programme "Dianping Dianping" mentionné précédemment.

Continuons d'abord à terminer cet événement, et nous reviendrons pour parler de ce gouffre de données plus tard.

4. Une fois toutes les configurations terminées, vous pouvez cliquer sur Vérifier les champs, puis remplir certaines descriptions de champs, puis cliquer sur Enregistrer et tester, puis sélectionner un développeur et cliquer sur Suivant. peut utiliser WeChat pour entrer dans le mini programme, cliquer sur le dom correspondant à la classe .add que nous venons de configurer dans le mini programme, puis revenir à la page où ils viennent de cliquer sur Suivant pour voir les données en pointillés (enfant et identifiant dans l'image ci-dessous ) C'est le champ configuré précédemment).

Partage dexpérience sur la collecte de données dans le processus de développement de lapplication de commande Dianping


Partage dexpérience sur la collecte de données dans le processus de développement de lapplication de commande Dianping


Partage dexpérience sur la collecte de données dans le processus de développement de lapplication de commande Dianping


5. OK, ici on y va La création d'un événement est jusqu'à présent terminée. "pit"

Ensuite, revenez à la valeur des données qui viennent d'être mentionnées. Lisez attentivement cette ligne de texte et vous trouverez. que Quelques points clés :

  • value ne peut être que le champ de données de l'instance de page, ce qui signifie que les valeurs qui ne sont pas dans page.data ne peuvent pas être utilisé

  • S'il s'agit d'un tableau, l'index du dom dans le sélecteur de classe doit être égal à l'index correspondant au tableau de page.data, sinon l'erreur sera obtenu !

Le deuxième point est un exemple :

Partage dexpérience sur la collecte de données dans le processus de développement de lapplication de commande Dianping


Le bouton Ajouter dans notre page de menu est le .add qui vient d'être configuré. En supposant que le tableau de liste se trouve dans page.data.menuList, alors la case rouge devrait être page.data.menuList[. 2 ], l'index est 2
L'index obtenu via le sélecteur de classe de $('.add')=0 (les deux premiers sont épuisés, non .add);
Lorsque vous utilisez une analyse personnalisée à ce moment-là, cliquez sur le signe plus, et les données rapportées sont en fait les données de page.data.menuList[0], pas page.data.menuList[2], donc les mauvaises données seront signalées
Insuffisant :
  • Rapportez directement le contenu et page.data Crochet, inflexible

  • L'index de dom doit être aligné avec l'index du tableau dans les données de la page. Dans certains cas complexes, il ne peut pas répondre aux besoins (souvent en entreprise réelle, il le fait). sera comme notre menu La même chose que la page, la condition d'apparition du signe plus est que l'index ne puisse pas être aligné s'il n'est pas épuisé)

    Donc pour l'étape actuelle d'analyse personnalisée-test interne , les données pouvant être collectées sont relativement limitées, j'espère attendre après une ouverture complète, ce sera plus flexible pour la configuration des utilisateurs

    .
Réflexion à la solution pour réaliser les exigences de points enterrés dans le mini programme :

Étant donné que le mini programme ne prend pas en charge les cookies et que le système statistique de l'entreprise a certaines données L'envoi est mis en œuvre via des cookies. À l'avenir, vous pourrez envisager d'enterrer manuellement toutes les données dans le code, puis de les envoyer à la base de données statistiques de l'entreprise via ajax. Le propre système statistique de l'entreprise collectera entièrement des statistiques sur le mini. programme.


Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn