Flutter 实时跟踪

Posted

技术标签:

【中文标题】Flutter 实时跟踪【英文标题】:Flutter live tracking 【发布时间】:2020-07-03 07:35:38 【问题描述】:

我是 Flutter 开发的新手,具有 android 背景,我正在开发一个应用程序,用于使用“位置”第三方 API 使用 Flutter 进行实时跟踪 链接:https://pub.dev/packages/location 在大多数设备中,当应用程序处于后台且手机未使用时,位置流会停止,经过一段时间后,我无法解决此问题,也包含此 api 但它不会再次启动服务,链接:https://pub.dev/packages/background_fetch 但他们似乎并没有解决我的问题,如果有人在 Flutter 应用程序上进行过跟踪,请分享。

谢谢

我要求的结果。鉴于应用程序处于后台且手机未使用,无论手机位置的状态如何都应获取并发布到服务器。

编辑:27-11-2020 事实证明,没有解决方案,这与颤振无关,而是一般的 android。 对于有此问题的人,请通读 DOZE MODE,它是在 android 6.0 及更高版本中引入的。 我所做的解决方案是获得唤醒锁定,并保持屏幕开启以避免打盹模式,但这显然不是最优化的解决方案。

【问题讨论】:

【参考方案1】:

我通过使用平台通道解决了 Flutter 中的后台定位服务。我已经结合了android前台服务(是前台,在后台访问GPS位置不允许实时。)

我已经通过使用 Platform Channel,Android Foreground Service 解决了 Android 的实时后台位置颤振应用程序。无论何时打开或关闭屏幕,它都能完美运行,您无需一直唤醒屏幕即可获取位置更新。

图片来源:https://flutter.dev/

https://flutter.dev/docs/development/platform-integration/platform-channels

【讨论】:

我将不得不测试它,不幸的是我没有时间,我仍然怀疑它是否可能,但请使用打盹模式检查,使用此链接 -> developer.android.com/training/monitoring-device-state/…

以上是关于Flutter 实时跟踪的主要内容,如果未能解决你的问题,请参考以下文章

VSCode Flutter - 停止跟踪 Flutter repo 更改

如何在 Firebase 分析中跟踪 Flutter 屏幕?

Flutter:如何创建百分比跟踪器

Flutter 实时通知

使用 Flutter BLoC 模式跟踪多个状态

Flutter:如何实时监听权限