65.9K
CodeProject 正在变化。 阅读更多。
Home

Google Analytics 集成到 Windows 8

starIconstarIconstarIconstarIcon
emptyStarIcon
starIcon

4.50/5 (5投票s)

2013年5月6日

CPOL

4分钟阅读

viewsIcon

31485

downloadIcon

634

本文展示了如何在 GA 中跟踪您的 Windows 8 应用

介绍  

Google Analytics 是 Google 提供的一项服务,可生成关于您网站访问量的详细统计信息和报告。它是使用最广泛的网站统计服务。但该产品不仅限于跟踪访问量,还提供搜索分析、事件跟踪、电子商务以及许多您可能想到的酷功能。它提供易于集成的 API,可用于任何 Web 应用程序。跟踪不仅限于网站,还包括 Android 和 iOS 应用。

在本文中,我们将介绍如何设置 Google Analytics,使用名为 GoogleAnalyticsTracker 的实用工具与 Windows 8 Metro 应用集成,并在 GA 中进行监控。

先决条件 

  1. Google 账号  
  2. Visual Studio 2012
  3. Windows 8 

注册并配置 Google Analytics (GA) 

在接下来的步骤中,我们将介绍如何设置 GA 来跟踪 Windows 应用商店应用。 

  • 访问 www.google.com/analytics 页面。 
  • 点击“创建账号”。 
  • 提供登录凭据,然后点击“登录”。 
  • 点击“注册”。 

默认情况下,会选择网站跟踪。将其更改为应用。选择跟踪方法。填写所需字段,然后点击“获取跟踪 ID”。 

请记住,跟踪 ID 'UA-XXXXXXXX-XX' 对每个配置文件都是唯一的,这在跟踪我们的网站/应用方面起着重要作用。让我们看看 GA 的结构。

 

这表明您可以在主账号下拥有多个子账号(属性)。您还可以通过在每个子账号下创建多个配置文件来对网站/应用进行分类。每个子账号都将有一个唯一的跟踪 ID,此 ID 有助于您跟踪该子账号下的网站/应用。

您可以在管理面板中管理这些内容。当然,您可以跟踪的网站数量是有限制的。 此链接 提供了关于这些数字的详细信息。

GA 目前支持 Android 和 iOS 的应用跟踪。Google 没有为 Windows 应用商店应用提供 API 支持。但是,有一个名为 'GoogleAnalyticsTracker' 的实用工具,可以在 这里 找到,它允许您跟踪 Windows 应用商店应用。GoogleAnalyticsTracker 是一个用于跟踪 Google Analytics 的 C# 库。您可以从这个 链接 下载它。 

如何使用 GoogleAnalyticsTracker?

让我们在 Visual Studio 2012 中使用默认的 Grid 模板快速创建一个示例 Windows 8 应用。

打开 VS2012。转到文件 -> 新建项目。选择模板 -> Visual C# -> Windows 应用商店。从模板列表中选择 Grid App (XAML) 模板。我将它命名为 'GAInt1'。点击 'OK'。 

现在,我们需要两个程序包 GoogleAnalyticsTracker.RT 和 Newtonsoft.Json。我们可以从 Nuget 包管理器获取第二个程序包。
要安装这些程序包,请转到工具 -> 库包管理器 -> 程序包管理器控制台。在控制台中键入以下命令 

Install-Package Newtonsoft.Json 
Install-Package GoogleAnalyticsTracker.RT 

或者,您可以从这个 链接 下载 GoogleAnalyticsTracker。解压缩并打开 VS 解决方案文件。生成 GoogleAnalyticsTracker.RT 项目,并在您的项目中引用 GoogleAnalyticsTracker.RT.dll 文件。 

如果上述步骤成功执行,您应该能在项目引用中看到它们。 

代码讲解 

要跟踪应用中的视图(或页面),您需要调用 'Tracker' 对象的 'TrackPageViewAsync' 方法。

public Task<TrackingResult> TrackPageViewAsync(string pageTitle, string pageUrl); 

因此,无论您想跟踪哪个页面,都必须创建 Tracker 实例并调用上述方法。

using (Tracker tracker = new Tracker("UA-40653799-3", ""))
{
    tracker.TrackPageViewAsync("GroupDetailsPage", "data load uri");
}

如果您观察 Tacker 类,它有两个带参数的构造函数,第一个参数是 trackingAccount,它是 GA 中的唯一跟踪 ID,第二个参数是 trackingDomain。 

public Tracker(string trackingAccount, string trackingDomain);
public Tracker(string trackingAccount, string trackingDomain, IAnalyticsSession analyticsSession);  

尽管 trackingDomain 在签名中看起来是必需的,但您可以将其设置为空字符串。跟踪域在 GA 中不需要有值。 

因此,一旦页面加载,就在其中调用跟踪方法。让我们将跟踪代码添加到 GroupDetailPage.xaml.cs 中。

protected override void LoadState(Object navigationParameter, Dictionary<String, Object> pageState)
{
   using (Tracker tracker = new Tracker("UA-40653799-3", ""))
   {
      tracker.TrackPageViewAsync("My API - Create", "api/create");
   }
   // load page data
}

同样,将上述代码粘贴到所有页面中。

现在,如果您运行该应用,您应该能够在 GA 中看到跟踪信息。 

如前所述,GA 不仅限于跟踪页面,还可以跟踪事件。事件可以是您应用中的自定义操作。它可以像点击按钮、下载文件等一样简单。那么,如何跟踪/监控它们呢?要跟踪它们,我们需要调用 Tracker 类的 TrackEventAsync 方法。 

public Task<TrackingResult> TrackEventAsync(string category, string action, string label, int value);

让我们在 *GroupDetailPage.xaml.cs* 的 ItemView_ItemClick 事件中调用此方法。

 void ItemView_ItemClick(object sender, ItemClickEventArgs e)
{
   // Navigate to the appropriate destination page, configuring the new page
   // by passing required information as a navigation parameter
   var itemId = ((SampleDataItem)e.ClickedItem).UniqueId;
   using (Tracker tracker = new Tracker("UA-40653799-3", ""))
   {
        tracker.TrackEventAsync("GroupDetailPageItem", "Click", itemId, default(int));
   }
   this.Frame.Navigate(typeof(ItemDetailPage), itemId);
}  

现在,如果您运行该应用,您将在 GA 的“实时”->“事件”->“概览”选项卡中看到事件被跟踪。 

还有什么?

GA 提供了许多其他功能来跟踪电子商务网站上的交易。此外,还提供了搜索功能。 

因此,现在您可以继续在您的网站或应用中尝试此功能,并监控您的应用使用情况。 

© . All rights reserved.