Android地理定位FireStore:一种在用户关闭位置共享选项后阻止谷歌服务获取用户地理点的方法
我正在尝试构建一个跟踪应用程序,从中获得具有用户权限的用户地理点,然后将其上载到Firestore数据库。之后,我使用地理点在地图上添加标记,这有助于在谷歌地图上定位特定用户。但是,我计划添加一个选项来隐藏用户的位置,当用户选择该选项时,该特定用户的位置在地图上将不可见。我正在使用谷歌服务不断更新用户的位置。有没有人能解释一下,我如何才能停止获取用户的位置,并从谷歌地图中删除该特定用户的标记?提前感谢。我能想到的最简单的方法是在每个用户对象下添加一个名为Android地理定位FireStore:一种在用户关闭位置共享选项后阻止谷歌服务获取用户地理点的方法,android,google-maps,geolocation,google-cloud-firestore,android-service,Android,Google Maps,Geolocation,Google Cloud Firestore,Android Service,我正在尝试构建一个跟踪应用程序,从中获得具有用户权限的用户地理点,然后将其上载到Firestore数据库。之后,我使用地理点在地图上添加标记,这有助于在谷歌地图上定位特定用户。但是,我计划添加一个选项来隐藏用户的位置,当用户选择该选项时,该特定用户的位置在地图上将不可见。我正在使用谷歌服务不断更新用户的位置。有没有人能解释一下,我如何才能停止获取用户的位置,并从谷歌地图中删除该特定用户的标记?提前感谢。我能想到的最简单的方法是在每个用户对象下添加一个名为locationSharing的Boole
locationSharing
的Boolean
类型的新属性,默认值为true
。一旦用户决定私有化,只需将此新属性的值更改为false
。现在,在用户文档上附加一个快照侦听器,以实时查看locationSharing
属性的更改。如果locationSharing
属性的值变为false
,则停止更新用户在谷歌地图上的位置。就这样。嗨,亚历克斯,非常感谢你的帮助。是的,它起作用了。另外,你的YouTube频道非常有用,非常感谢你的教程:)