Autor Téma: Sledování Windows desktop aplikace pomocí Google analytics  (Přečteno 546 krát)

Offline Jan Fiala

  • Hrdina
  • ****
  • Příspěvků: 256
  • Karma: 3
    • Verze Delphi: 10.4.1
    • PSPad editor
Dobrý den
Nepoužívá někdo Google analytics na sledování aplikace? Jde mi jen o základní údaje - verze aplikace, počty uživatelů, země.
Teoreticky je to jednoduché:
https://www.starmessagesoftware.com/blog/track-delphi-pascal-gui-application-google-analytics
Není problém přidat do aplikace sledování, ale zasekl jsem se na vlastnim Analytics webu
Pokud uvedu jako ID vlastnictví existující web, pak nejsem schopný se podle toho webu dofiltrovat k nějakým výsledkům, nehledě na to, že jako aplikace jsou podporované pouze Max a Android a pak WEB.


Pokud to někdo používá, uvítal bych zkušenosti.

Offline Jan Fiala

  • Hrdina
  • ****
  • Příspěvků: 256
  • Karma: 3
    • Verze Delphi: 10.4.1
    • PSPad editor
Re:Sledování Windows desktop aplikace pomocí Google analytics
« Odpověď #1 kdy: 07-02-2021, 14:47:02 »
Odpovím si částečně sám
Je třeba vytvořit novou službu v existujícím účtu. Při vytváření služby je třeba v rozšířených možnostech zapnout, že jde o Universal analytics, protože jako výchozí se teď vytváří analytics v4. Volbu mezi Apple, Android a Web volíme Web, protože jinak chce ID balíčku, které nemáme.
Vytvořila se nová služba UA-xxxx-2.
Nalinkoval jsem ji do aplikace, vše běží normálně, ale nezobrazuje se v žádných přehledech. Je možné, že do přehledů se to dostane až další den.

Offline Jan Fiala

  • Hrdina
  • ****
  • Příspěvků: 256
  • Karma: 3
    • Verze Delphi: 10.4.1
    • PSPad editor
Re:Sledování Windows desktop aplikace pomocí Google analytics
« Odpověď #2 kdy: 08-02-2021, 10:14:25 »
Takže ještě jinak:

Zde je ke stažení knihovna a unity pro Delphi/Lazarus
https://github.com/starmessage/libSoftMeter

Google analytics:
založit nový účet pro aplikace, ať se to nemíchá např. s existujícím webem
pod ním založit službu pro každou aplikaci, v rozšiřujících nastaveních zvolit Universal analytics, klidně tu první možnost s rozšířením na GA4
Výsledkem je nové ID pro službu UA-xxxxxx-n, které se použije v aplikaci

Osobně jsem nepoužil připravený dll_loaderAppTelemetry.pas, ale udělal jsem vlastní implementaci. Pokud uživatel statistiku vypne, pak ani neloaduju DLL a nevytvářím žádné objekty okolo statistik.
nestačí jen zavolat dllSoftMeter.start(), je třeba ještě zavolat dllSoftMeter.sendPageview()

Při testování je v realtime okamžitě vidět spuštění, takže to je pro vaši kontrolu, že to funguje jak má

Offline Jan Fiala

  • Hrdina
  • ****
  • Příspěvků: 256
  • Karma: 3
    • Verze Delphi: 10.4.1
    • PSPad editor
Re:Sledování Windows desktop aplikace pomocí Google analytics
« Odpověď #3 kdy: 09-02-2021, 10:20:20 »
A ještě doplňuji

Pokud nechcete použít cizí knihovnu, stačí poskládat parametry podle
https://developers.google.com/analytics/devguides/collection/protocol/v1/parameters
do HTTP GET requestu a poslat, třeba pomocí Synapse

V RealTime je výsledek vidět okamžitě, ve statistikách pak s asi 2-denním zpožděním.
Výsledkem pak bude přehled použitých aplikací podle verzí a Analytics to rozháže podle lokace.

Jako clientID (cid) jsem kvůli anonymitě zvolil osolený MD5 hash vytvořený z USER SID.
« Poslední změna: 09-02-2021, 10:22:27 od Jan Fiala »

Offline geby

  • Plnoletý
  • ***
  • Příspěvků: 241
  • Karma: 17
    • Verze Delphi: 7, 2007, XE2, 10.2
    • Synapse
Re:Sledování Windows desktop aplikace pomocí Google analytics
« Odpověď #4 kdy: 16-02-2021, 21:37:46 »
Chápu to tedy dobře, že ta komerční DLL knihovna nedělá vlastně nic jiného, než že poskládá parametry toho jednoho HTTP GET?
To by se už vyplatilo udělat nějakou unitku nad Synapsí (nebo čímkoliv, vtip je ve vygenerování URL...)

Offline Jan Fiala

  • Hrdina
  • ****
  • Příspěvků: 256
  • Karma: 3
    • Verze Delphi: 10.4.1
    • PSPad editor
Re:Sledování Windows desktop aplikace pomocí Google analytics
« Odpověď #5 kdy: 17-02-2021, 11:38:18 »
Nevím, co jiného by ta knihovna delala, v podstate zrejme posbira udaje o OS, Windows atd. ktere muze zautomatizovat a pak z toho celeho vygeneruje HHTP Get request a posle to na GA.
Takto to ted delam i ja.
A na poslani pouzivam Synapsi.

Driv existovala v Analytics Exception, ted tam zustal pouze Event, takze se to da obejit jako event class = exception a dalsi udaje pak dodat do event label apod.

Ale uz ted jsem schopny zjistit pocet uzivatelu v ramci verze programu, zemi atd. Samozrejme verze OS, rozliseni monitoru apod. by tam slo poslat taky, ale k nicemu to nepotrebuju.

Offline Jan Fiala

  • Hrdina
  • ****
  • Příspěvků: 256
  • Karma: 3
    • Verze Delphi: 10.4.1
    • PSPad editor
Re:Sledování Windows desktop aplikace pomocí Google analytics
« Odpověď #6 kdy: 24-02-2021, 07:19:45 »
Ten GA je fakt divný. Na webou Analytics jsem výjimky (exceptions) nenašel, ani informace o aplikacích.
Na mobilní aplikaci jsou jak údaje o aplikacích, tak i výjimky.
Vypadá to, jako by to byly 2 různé aplikace a každá měla přístup k určité množině dat.
Pokud si na webu udělám uživatelský report, tak ho v mobilní aplikaci nevidím a naopak.