1

我正在尝试实现此 Appsflyer 卸载跟踪功能:https ://support.appsflyer.com/hc/en-us/articles/210289286?input_string=android+uninstall+tracking#Android-Uninstall

并且显然需要设置 FCM 服务来处理静默推送。问题是 API 级别 26 后限制后台服务:https ://developer.android.com/guide/components/services

那么这将如何工作呢?我在这里错过了什么吗?尝试搜索 FCM 和服务背景限制,但没有发现围绕该问题的讨论。

4

2 回答 2

1

我想你问的是com.appsflyer.FirebaseMessagingServiceListener服务?如果是这样 - 此服务仅用于从 Firebase 获取 Firebase 令牌 - 这发生在您第一次运行应用程序以及 Firebase 决定更新其令牌时(也只能在应用程序运行时发生,永远不会在 bg 中发生)。

对于 AppsFlyer Uninstall Measurement 而言,接收此令牌并能够在未来使用它就足够了。在初始令牌注册后,应用程序无需处于前台甚至“活动”状态,因为 AppsFlyer SDK 没有为此原因处理任何数据。

于 2019-06-18T09:57:22.810 回答
0

一般来说,FCM 文档声明可以在服务中处理消息(和令牌),只要它足够快(20 秒),请参见此处:https ://firebase.google.com/docs/cloud-messaging /android/接收

我猜如果您使用的是 Appsflyer FirebaseMessagingServiceListener,他们将(至少在提供此类服务时应该)在必要时处理所有后台处理。否则,如果您打算自己实现 FirebaseMessagingService,只需按照文档中的说明交出 FCM 令牌。此处同样适用:AppsFlyer 应在必要时处理后台处理。

对于您自己的后台处理(超过 20 秒),请考虑使用 JobScheduler。

于 2019-06-18T09:27:46.833 回答