在没有任何SDK的情况下在您的应用中使用Google Analytics(分析)

如果您像我一样,每当您“被迫”向您的应用添加第三方灾难二进制代码时,它都会给您带来沉重的负担。 当客户想要添加“分析”时,我通常会遇到这类库。

我遇到最多的是Google Analytics(分析)。 这是一个相对简单易用的好工具。 它已经存在了几乎永远,因此被广泛传播并广为人知。 不幸的是,就像大多数其他针对iOS的分析解决方案一样,闭源二进制代码😱。

这有几个原因使我误解了。

我无法查看代码。 我真的不喜欢没有选择了解我构建的应用程序中包含的代码的选项。 当代码旨在跟踪,衡量和报告用户行为时,甚至更是如此。 这些事情通常以我认为“令人毛骨悚然”的方式完成。 我们都记得Twitter是如何使用canOpenURL找出用户在iPhone😒上安装了哪些应用程序的。 我非常相信销售广告的每个人(包括Google)都采取类似或“爬行”的策略。 las,这是您使用广告销售公司的分析解决方案时必须面对的问题。

现在大部分

Google Analytics(分析)在后台使用了称为Google Measurement Protocol的工具。 这是一个完全开放且有文档证明的API,任何人都可以向其发送请求。 它使我们能够建立自己的报告机制,以将数据提供给Google Analytics(分析)👍。

我已经围绕该API构建了一个不错的小包装,使将基本的Google Analytics(分析)轻松运送到我为客户构建的所有应用中。 您可以根据需要使用它,也可以简单地构建自己的🤓。 只花了约150行Swift代码。

使用我的GoogleReporter实现,可以轻松跟踪事件,屏幕浏览和异常。 跟踪屏幕视图的方法如下:

 类BeerViewController:UIViewController { 
覆盖func viewDidAppear(_动画:布尔){
super.viewDidAppear(动画)
GoogleReporter.shared.screenView(“啤酒”)
}
}

或一个简单的事件

  func didCompleteSignUp(){ 
GoogleReporter.shared
.event(“ Authentication”,操作:“ Signed Up”)
}

在开始之前,您需要做的就是为跟踪器配置添加新应用程序时Google Analytics(分析)吐出的属性ID。

  GoogleReporter.shared.configure(withTrackerId:“ UA-XXXXX-XX”) 

如果您正在考虑向应用程序添加Google Analytics(分析)支持,则应在GitHub上查看GoogleReporter。