小编fur*_*y12的帖子

Google Analytics 4 - 在不使用 gtag.js 或 firebase 的情况下使用测量协议 API

是否可以使用 GA4 测量协议将事件发送到 Google Analytics,并在 GA 仪表板中查看和分析它们,而无需使用gtag.jsGA4 或任何其他前端脚本?用例是一些事件被发送到我的服务器,我将通过 API 将这些事件推送到 GA。

让我想到的一件事是官方的Measurement Protocol API 说:

为了使事件有效,它必须具有已用于从 gtag.js 发送事件的 client_id。您需要在客户端捕获此 ID 并将其包含在对测量协议的调用中。在向您的酒店发送事件时,我们使用“client_id”作为 client_id。您需要将其替换为来自 gtag.js 的真实 client_id。

https://developers.google.com/analytics/devguides/collection/protocol/ga4/verify-implementation?client_type=gtag#client_send

这表明只有具有有效client_id来源的事件gtag.js才会被计数。我对随机生成进行了一些实验client_ids,发现我能够在RealtimeGA4 控制台的部分(该Event count by Event name部分)中看到我的事件,但所有其他部分都是空的,并且该Users in last 30 min部分始终显示 0。

有人可以向我解释为什么它为零以及这样的用例是否有效?谢谢

analytics google-analytics measurement-protocol google-analytics-4

15
推荐指数
2
解决办法
3265
查看次数

如何从 Spring Data Pageable 检索排序属性和方向?

我正在构建一个 API,它将调用另一个 API 并返回结果。我正在调用的 API 具有分页和排序机制,需要将以下查询参数添加到 URL:

?pageNumber=1&pageSize=20&sortField=id&sortDirection=asc
Run Code Online (Sandbox Code Playgroud)

现在,我希望我的 API 使用 Spring Pageable 对象作为控制器方法中的参数,因此,根据 Spring Docs,传递给我的新 API 的 URL 将是:

?page=1&size=20&sort=id,asc
Run Code Online (Sandbox Code Playgroud)

因此,为了将接收到的 pageable 对象映射到我需要传递给底层 API 的所需查询参数,我需要从 Pageable 对象中检索分页和排序信息。至于它pageSizepageNumber它非常简单:

pageable.getPageNumber()
pageable.getPageSize()
Run Code Online (Sandbox Code Playgroud)

但是如何检索 sortField 和 sortDirection?

pageable.getSort() 返回 Sort 对象,我无法从中找到检索所需内容的方法 - sortField 值(带有属性名称的字符串)和 sortDirection 值(asc 或 desc)

谢谢

java spring-data

8
推荐指数
1
解决办法
3664
查看次数

Stripe - 在不同国家以不同货币付款

我正在将我的服务与 Stripe 集成以进行订阅付款处理。我希望该服务能够在不同的国家/地区提供。因此,我想在不同国家以不同货币提供订阅。例如,假设美国用户的订阅费用为 10 美元/月。在根据用户所在位置以不同货币提供相同产品时,Stripe 的最佳实践是什么?(例如德国人 12 欧元,英国人 15 英镑等)。

我想到的一件事是拥有一个单一的 Stripe 产品,以不同的货币定义多个价格,使用一些第三方 IP 定位服务来找出请求的来源,并根据用户位置显示不同的定价选项。因此,我会将 Price_ids 映射到服务器端的国家/地区,确定客户端的位置,并在获取可用产品时将其传递到服务器。这是最佳实践还是通常的做法不同?

payment integration stripe-payments

6
推荐指数
1
解决办法
1529
查看次数

Ionic 3 应用程序 - 如何使字体大小独立于本机设置?

我正在开发一个 Ionic 3 应用程序,我最近发布了它并在生产中,使用了各种类型和尺寸的手机,我注意到有一个名为“font-size”的 android 本机设置,您可以在其中设置文本的大小你的手机更大或更小。

有些人(其中包括许多老年人)选择“大”甚至“巨大”文本大小。不幸的是,这会影响我在手机上的应用程序中的文本,并完全破坏布局。

我在 css 文件中定义字体大小的方式是使用 em 值,但我也尝试过 px。您知道是否有任何方法可以阻止我的应用程序遵循此本机 Android 文本大小设置?或者有其他方法可以修复吗?请帮忙,干杯

android ionic-framework ionic3 angular

5
推荐指数
1
解决办法
3498
查看次数

Firebase Analytics 自定义事件未显示在事件列表中

我正在 Ionic 3 应用程序中实施 Firebase Analytics。我想在代码中的某些位置记录一些与业务重要工作流相对应的自定义事件。因此,在代码中的那些地方,我使用我创建的方法调用cordova-plugin-firebasex

logEvent(eventName: string, eventParams?: any) {
    window['FirebasePlugin'].logEvent(eventName, eventParams);
  }
Run Code Online (Sandbox Code Playgroud)

eventName是我的自定义事件名称,例如GO_TO_SHOP_LINK_CLICKED. 当我转到 firebase 控制台并运行调试视图时,我可以看到在我的开发设备上完成工作流程时发生的事件。我还可以看到记录在流视图中的事件(它们出现在过去 30 分钟的事件选项卡中)。但是,我的自定义事件没有出现在 Firebase 控制台的“事件”表中,这基本上意味着我无法查找超过 30 分钟的自定义事件的统计信息。我确定我遗漏了一些东西,Firebase 不可能不允许这样一个基本用例。你能给些建议么?谢谢

firebase ionic-framework firebase-analytics

5
推荐指数
1
解决办法
3469
查看次数

使用 OpenCV.js 检测角落里有正方形的框架

我一直在尝试使用 Javascript 和 OpenCV.js 创建一个填写的表单扫描仪。我基本上想做的是拍摄一张写有填写好的表格的纸的照片,然后能够扫描照片并分析表格中的答案。第一步是实际找到图片中的形式并应用透视变换以获得论文的“自上而下的视图”。我所做的就是设法让脚本检测这张纸并应用转换以很好地扫描它。我通过应用灰度来做到这一点,然后应用 Canny 边缘检测,迭代找到的边缘,找到最大的有 4 个角的边缘,并假设这一定是我的论文。

在此输入图像描述

这种方法效果相对较好,但有时脚本会混淆纸张的实际内容 - 有时会检测到其他矩形并假定其是纸张,有时拍摄纸张的背景非常亮并且有边缘不清晰(对比度不够)。当脚本认为它已经找到了纸张时,这确实破坏了我的流程,但实际上是其他东西。我想改进这个纸张检测部分,这样我就可以始终确保检测到正确的东西。我想 - 让我们在表单周围添加一个自定义框架,这将更容易检测并在角落添加一些正方形(以仔细检查找到的框架是否 100% 是我正在寻找的框架)。

所以我创建了这样的东西:

在此输入图像描述

现在我希望能够检测框架的角落,并确保“填充”的方块位于角落中,以确保这 100% 是我正在寻找的框架。你能建议一下如何用 openCV 实现它吗?这是正确的方法吗?谢谢!

javascript opencv image-processing

3
推荐指数
1
解决办法
3097
查看次数

使用 Java / Postgres 处理日期时间和时区

我正在创建一个应用程序,让用户创建一个带有日期的事件。例如 - 生日,2018 年 9 月 25 日。(仅询问用户日期)。我想将这些事件对象存储在我的 Postgres 数据库中。

在该日期结束时(这意味着 2018 年 9 月 25 日 23:59:59),我希望我的应用程序在该事件上设置一个标志expired = true

我最初的想法是每隔一小时运行一个调度程序,检查事件记录,如果当前服务器时间大于存储的事件时间,则设置标志。因此,我的第一个问题是:调度程序的想法是最好的方法吗?或者它的性能可能有点差,实际上有更好的方法可以做到这一点?我之所以要每小时运行一次,是因为时区不同。总有某个地方是 23:59:59。

其他问题更侧重于存储和检查日期信息本身。我如何处理时区?假设来自美国的用户在给定日期添加了生日活动,而我的服务器位于欧洲。如何将其存储在 PostgresDB 中以及如何在调度程序中执行检查?我需要以某种方式将时区存储在数据库中,然后在 sscheduler 中检查给定时区中给定服务器时间的日期是否为 23:59:59。

请帮助,我对此感到非常困惑。举个例子就太棒了!谢谢!

java postgresql timezone date scheduled-tasks

2
推荐指数
1
解决办法
2875
查看次数