2017-02-23 1 views
1

Je voudrais rassembler quelques métriques sur l'utilisation pour une application de bureau multiplateforme basée sur Electron. Cela comprendrait des informations de base sur l'environnement de l'utilisateur (système d'exploitation, taille de l'écran, etc.) ainsi que la possibilité de suivre l'utilisation, par exemple le nombre de fois où l'application est ouverte ou des actions spécifiques dans l'application. Ces mesures doivent être envoyées à un serveur d'analyse, afin qu'elles puissent être visualisées globalement. Idéalement, je pourrais héberger le composant côté serveur moi-même, mais envisagerais certainement une solution hébergée par un tiers.Comment collecter des statistiques utilisateur pour une application de bureau Electron?

Il existe différentes solutions d'analyse pour le Web (Google Analytics, Piwik) et pour les applications mobiles, ainsi que des solutions pour les applications côté serveur de Node.js. Est-il faisable d'adapter l'une de ces solutions aux applications électroniques de bureau? Comment? Ou existe-t-il de bonnes solutions d'analyse spécialement conçues pour les applications de bureau fonctionnant avec Electron/javascript? Contrairement à une page Web classique, l'utilisateur peut utiliser l'application hors ligne. Les actions hors ligne doivent donc être enregistrées, mises en file d'attente et envoyées ultérieurement lorsque l'utilisateur se connecte. Une application de bureau charge généralement des pages du système de fichiers, pas HTTP, de sorte que la solution doit être capable de faire face à cela. À la différence d'une application côté serveur Node.js, il peut y avoir un grand nombre de clients plutôt qu'une seule (ou quelques) instances de serveur. L'analyse pour une application de bureau serait centrée sur l'utilisateur, alors qu'une application Node.js côté serveur pourrait ne pas l'être. Facilité d'installation est également un facteur important - une solution idéale aurait juste quelques lignes de configuration pour recueillir des mesures de base, puis pourrait être étendu au besoin avec des actions/événements personnalisés.

Répondre

2

Le plus simple sera d'utiliser Google Analytics ou une offre similaire.

Pour la plupart, vous aurez deux problèmes majeurs à résoudre sur l'hébergement sur un site Web:

  1. électronique ne stocke pas les cookies ou l'état entre les pistes. Vous devez stocker ces bibliothèques manuellement
  2. La plupart d'analyse ignorent file: urls afin qu'ils ne reçoivent que de coups Internet

Utilisez an existing library et most de ces problèmes seront déjà résolus pour