为什么捐赠
API 浏览器
升级指南
创建新项目
quasar.config 配置文件
从 Webpack 项目转换
浏览器兼容性
TypeScript 支持
目录结构
命令列表
CSS 预处理器
使用 VueRouter 进行页面路由
懒加载 - 代码分割
资源处理
Boot 文件
预取特性
API 代理
配置 Vite
处理 import.meta.env
使用 Pinia 管理状态
代码检查与格式化
测试与审计
开发移动应用
Ajax 请求
开放开发服务器到公网
联系站长
Quasar CLI with Vite - @quasar/app-vite
管理谷歌分析

Google Analytics 没有提供官方的 Capacitor 插件。请选择一个支持您应用目标平台和合规要求的分析集成方案。对于原生 Google Analytics,常见的做法是通过社区 Capacitor 插件使用 Firebase Analytics。

WARNING

  • 分析功能可能需要用户同意、隐私声明、数据安全声明和平台特定的配置。在收集数据之前,请查阅当前 Google Play、App Store、分析服务提供商和适用法律的要求。
  • 远程脚本会在应用的 WebView 中执行,并获得该渲染器可用的访问权限。仅从您信任的来源加载脚本,通过 Content Security Policy 限制它们,尽可能选择维护良好的原生分析集成方案。仅收集您需要的数据,避免发送密钥或直接标识符,获取适用法律和应用商店政策所要求的用户同意,并在应用的隐私声明中记录数据收集行为。

前提条件

  • 确保所有路由都有指定的 name 和 path 参数。否则它们无法传递给 ga.logPage 函数。更多关于路由的信息请参考使用 Vue Router 进行页面路由
  • 具备 Google Analytics 的基础知识

准备工作

在开始将 Google Analytics 集成到应用之前,你需要一个 Google AnalyticsGoogle Tagmanager 的账户。让我们先完成这一步。当你有了这些账户,就可以开始配置 Tag Manager 了。按照这篇 Multiminds 文章中的步骤操作。

安装分析插件

以下示例使用 @capacitor-firebase/analytics。请完整遵循其安装指南,包括创建 Firebase 项目、添加 Android 和 iOS 配置文件,以及配置每个原生项目。

/src-capacitor 目录中安装 Capacitor 专属依赖,然后同步原生项目:

cd src-capacitor
pnpm add @capacitor-firebase/analytics firebase
pnpm exec cap sync

跟踪路由变化

创建一个 boot 文件,在导航完成后上报路由变化:

quasar new boot firebase-analytics [--format ts]
/src/boot/firebase-analytics.js

import { FirebaseAnalytics } from '@capacitor-firebase/analytics'
import { defineBoot } from '#q-app'

export default defineBoot(({ router }) => {
  router.afterEach(to => {
    FirebaseAnalytics.setCurrentScreen({
      screenName: String(to.name ?? to.path)
    }).catch(error => {
      console.error('Unable to record analytics screen', error)
    })
  })
})

仅在 Capacitor 模式下注册该 boot 文件:

/quasar.config file

export default defineConfig(ctx => ({
  boot: [...(ctx.mode.capacitor ? ['firebase-analytics'] : [])]
}))

有关记录事件、设置用户属性、管理采集和处理平台特定行为的更多信息,请参考插件文档。如果将来可能更换分析服务提供商,建议将分析调用封装在一个小型应用服务后面。