DICAS

Visite a biblioteca de dicas da comunidade.

Saiba mais

ARTIGOS

Abordagens detalhadas sobre assuntos diversos.

Saiba mais

INICIANTES

Aprenda a programar de um modo simples e fácil.

Saiba mais

DOWNLOADS

Acesse os materiais exclusivos aos membros.

Saiba mais
voltar

PARA QUEM GOSTA DE DELPHI

Biblioteca DGoogleAnalytics para integração do Delphi com o Google Analytics

Olá pessoal, tudo bem com vocês?

hoje estamos apresentando uma novidade sensacional!

O Google Analytics já é um velho conhecido de quem possui algum blog ou site, trata-se de uma ferramenta gratuita que o Google oferece para que você possa monitorar o seu site, ou seja, saber as páginas mais acessadas, tempo de visita, mecanismos de localização e etc.

Mas já imaginou como seria legal ter todas estas funções de análise para o seu APP?

O mais legal é que isso é possível, e totalmente sem custos, graças a biblioteca DGoogleAnalytics, publicada no GitHub por maiconsi.

Esta biblioteca implementa toda a utilização das APIs de comunicação do Google Analytics.

Vamos dar uma olhadinha no código

Código completo da unit de exemplo que acompanha os fontes do repositório.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
unit Google.View.Principal;
 
interface
 
uses
  Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
  Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls, Vcl.ComCtrls, Vcl.ExtCtrls;
 
type
  TfrmPrincipal = class(TForm)
    LabelAnalytics: TLabel;
    BtnSendEvent: TButton;
    BtnSendPageView: TButton;
    Button1: TButton;
    procedure BtnSendEventClick(Sender: TObject);
    procedure FormShow(Sender: TObject);
    procedure BtnSendPageViewClick(Sender: TObject);
    procedure Button1Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;
 
var
  frmPrincipal: TfrmPrincipal;
 
implementation
 
uses
  GoogleAnalyticsGlobal;
 
{$R *.dfm}
 
procedure TfrmPrincipal.BtnSendEventClick(Sender: TObject);
begin
  _GoogleAnalytics
    .Event('Relatorio',
            'Imprimir',
            'Vendas do dia',
            'Inclua aqui qualquer informacao relevante do evento');
 
  ShowMessage('Imprimir relatório de vendas do dia.');
end;
 
procedure TfrmPrincipal.BtnSendPageViewClick(Sender: TObject);
begin
  _GoogleAnalytics
    .PageView('ERP',
              'frmCadastroCliente',
              'Cadastro de clientes');
 
  ShowMessage('Abrir formulário de cadastro de clientes.');
end;
 
procedure TfrmPrincipal.Button1Click(Sender: TObject);
begin
  _GoogleAnalytics
    .Event('Avisos',
            'Alerta',
            'Valor do desconto excedido!',
            'Inclua aqui qualquer informação relevante do evento');
 
  ShowMessage('Alerta para o usuário.');
end;
 
procedure TfrmPrincipal.FormShow(Sender: TObject);
begin
  _GoogleAnalytics
    .PageView('ERP',
              'frmPrincipal',
              'Formulário principal');
end;
 
end.

Veja que para enviar uma visualização de página, utilizamos

1
2
3
4
_GoogleAnalytics
    .PageView('ERP',
              'frmCadastroCliente',
              'Cadastro de clientes');

Já para envio de um evento, um exemplo é:

1
2
3
4
5
_GoogleAnalytics
    .Event('Avisos',
            'Alerta',
            'Valor do desconto excedido!',
            'Inclua aqui qualquer informação relevante do evento');

A Classe ainda implementa outras funções como Exceptions e ScreenView, ou seja, realmente implementando todas funções de comunicação oferecidas.

Certo, mas você deve estar se perguntando, como vinculo estes eventos a minha conta?

Então se você reparar no exemplo, verá que há no uses a unit GoogleAnalyticsGlobal, é nela que informamos os dados de nossa conta, veja abaixo;

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
unit GoogleAnalyticsGlobal;
 
interface
 
uses
  Google.Controller.Analytics.Interfaces;
 
var _GoogleAnalytics: iControllerGoogleAnalytics;
 
implementation
 
uses
  Google.Controller.Analytics;
 
const
  //Google Analytics property ID.
  GooglePropertyID =  'UA-000000000-0'; // colocar a sua UA fornecida pelo GOOGLE analytics.
  AppName = 'Minha Aplicacao';
  AppLicense = 'Comercial';
  AppEdition = 'ERP';
  VersaoSistema = '1.0.0';
 
initialization
  _GoogleAnalytics  :=  TControllerGoogleAnalytics
                          .New(GooglePropertyID);
 
  _GoogleAnalytics.AppInfo
    .AppName(AppName)
    .AppVersion(VersaoSistema)
    .AppLicense(AppLicense)
    .AppEdition(AppEdition);
 
end.

Uma vez configurada esta unit, é só dar uses ela onde precisar na sua aplicação e utilizar normalmente conforme o exemplo.

Quem tiver interesse pode ter acesso aos fontes no repositório no github:
https://github.com/maiconsi/DGoogleAnalytics

Para facilitar o entendimento, também criamos um vídeo demonstrando o uso.

Beleza pessoal? Dúvidas ou sugestões deixe o seu comentário!

Gostou do Post?
Compartilhe para a nossa comunidade poder crescer, obrigado.
APOIO DA COMUNIDADE via PagSeguro: https://pag.ae/7VccpnuCN

Um grande abraço é até o próximo post.

Facebook Comments Box
  • Giovani Da Cruz
  • 5.013 views
  • 2 comentários
  • 27 de abril de 2020

Está gostando do conteúdo? Considere pagar um cafezinho para nossa equipe!

2 respostas para “Biblioteca DGoogleAnalytics para integração do Delphi com o Google Analytics”

  1. Ola Adailson Priori, talvez possa ser algo com o último parâmetro.

    Tente assim por exemplo:

    _GoogleAnalytics
    .Event(‘Avisos’,
    ‘Alerta’,
    ‘Valor do desconto excedido!’,
    ”);

  2. Valkennedy Fernandes disse:

    Olá, alguem sabe me dizer se ainda funciona, pois estou tentando fazer a comunicação e não estou conseguindo.

Deixe um comentário

Ir ao topo

© 2024 Infus Soluções em Tecnologia - Todos os Direitos Reservados