Flutter:当我的应用不在前台时如何显示横幅(如地图/谷歌地图)?
Posted
技术标签:
【中文标题】Flutter:当我的应用不在前台时如何显示横幅(如地图/谷歌地图)?【英文标题】:Flutter: how to display a banner when my app is not in foreground (as Maps / Google Map does)? 【发布时间】:2020-04-09 17:54:33 【问题描述】:在 ios 上,当我在行程中使用 Google 地图并按主页按钮显示另一个应用程序时,Google 地图将在我的屏幕顶部显示一个蓝色横幅“Google 地图积极使用您的位置”。即使我打开另一个应用程序,此横幅也是永久性的。
我的理解是,此横幅允许 Google 地图不断接收位置更新并通知用户。
如何为我的 Flutter 应用程序实现相同的效果?适用于 iOS 和 android?
蓝色横幅的屏幕截图:
【问题讨论】:
iOS 显示,当没有“始终”位置权限的应用程序在后台使用您的位置时。因此,如果您的应用具有“使用时位置权限”,并且您在位置管理器上设置后台更新并调用startUpdatingLocation
,则会显示蓝色指示。
@Paulw11,谢谢!在答案中告诉我如何在 Flutter 中做到这一点?我会接受的
【参考方案1】:
当应用在后台使用您的位置时,会出现蓝色横幅。唯一发生的情况是:1. Location 设置为 Always,2. 您的应用需要以某种方式在后台使用 Location。
【讨论】:
嗯,不。我的应用程序使用“始终”权限并在后台接收通知而没有显示横幅 你的应用有在后台使用定位服务的方法吗? 实际上,昨天的大量测试表明,我在应用程序发送到后台几分钟后才收到位置事件,然后什么也没有。所以我正在寻找一种方法来运行后台进程以在颤动中获取位置,但奇怪的是我找不到关于这个主题的任何好的(即我清楚的)文档以上是关于Flutter:当我的应用不在前台时如何显示横幅(如地图/谷歌地图)?的主要内容,如果未能解决你的问题,请参考以下文章
Flutter Firebase如何控制通知在应用程序处于前台时不显示