在后台广播的工作地理围栏示例

Posted

技术标签:

【中文标题】在后台广播的工作地理围栏示例【英文标题】:Working geofencing example broadcasting in background 【发布时间】:2020-10-18 13:08:45 【问题描述】:

android 10 上 - 我正在寻找一种在后台进行地理围栏的方法。

我需要地理围栏广播,以便我的应用可以做出反应,即使它不在屏幕上。 例如通过发送通知。

我已经尝试过 GeoFencing api:https://developer.android.com/training/location/geofencing 向前端服务报告 向后台服务报告

当应用程序出现在屏幕上时 - 我会收到通知。 当应用程序不在屏幕上时 - 不会触发任何内容。 我不确定,如果广播没有传递给我的接收器,是否没有发送广播,或者接收器是否无法调用应用程序/发送通知。

是否有适用于 android 10 的工作示例?

【问题讨论】:

【参考方案1】:

从 Android 10 及更高版本开始,为了能够在后台使用地理围栏,您需要在添加地理围栏之前先请求并授予ACCESS_BACKGROUND_LOCATION 权限(以及ACCESS_FINE_LOCATION 和/或ACCESS_COARSE_LOCATION)。

这是 Android 10 中增加的一项安全预防措施,可防止恶意应用程序在后台跟踪您的位置。

有关访问后台位置的 Android 文档,请参阅 this。

【讨论】:

嗨@Skip 我的回答解决了你的问题吗?如果您仍然遇到问题,请告诉我。 很遗憾没有。我的应用程序获得了这些权限。我觉得有很多我想念的因素,所以我问了一个例子 您能否发布您的代码,以便我可以帮助您确定问题?

以上是关于在后台广播的工作地理围栏示例的主要内容,如果未能解决你的问题,请参考以下文章

背景中的地理围栏

Android 地理围栏示例代码中的错误?有人可以确认吗?

Android 地理围栏示例应用程序仅在使用 GPS 打开另一个应用程序时才有效

新的 Android 地理围栏 API - 示例代码在位置时不会发出警报/通知

在哪里可以找到适用于 Android Studio 3.3 的未弃用地理围栏示例代码?

地理围栏示例应用程序不适用于模拟位置