如何使用Android上的Google/Location API检测您是否在大楼中

如何使用Android上的Google/Location API检测您是否在大楼中,android,geolocation,google-places-api,android-wifi,android-location,Android,Geolocation,Google Places Api,Android Wifi,Android Location,当我从街上进入大楼时,我需要检测。现在我用下一个:如果你的设备连接到wifi,你就进入了大楼。 为此,我使用了WifiManager.NETWORK\u STATE\u CHANGED\u ACTION。但这并不完全准确,因为公园里有很多自由区wi-fi。请告诉我如何解决我的问题?给我一些链接或建议。也许有一种方法可以定义当前无线接入点是公共的,并且它位于公园或其他什么地方?正如我所见,您有两种选择: 当你长时间停止接收GPS信号时,试着去理解。GPS只能在室外工作,所以它会给你带来好的结果,你

当我从街上进入大楼时,我需要检测。现在我用下一个:如果你的设备连接到wifi,你就进入了大楼。
为此,我使用了
WifiManager.NETWORK\u STATE\u CHANGED\u ACTION
。但这并不完全准确,因为公园里有很多自由区wi-fi。请告诉我如何解决我的问题?给我一些链接或建议。也许有一种方法可以定义当前无线接入点是公共的,并且它位于公园或其他什么地方?

正如我所见,您有两种选择:

  • 当你长时间停止接收GPS信号时,试着去理解。GPS只能在室外工作,所以它会给你带来好的结果,你也可以试着了解GPS能看到多少卫星,并在这个数字下降时进行检查
  • 您可以尝试使用压力传感器(气压计)来检测高度,如果高度迅速升高,可能意味着用户正在使用电梯
    这两种方法的结合可能会产生一个很好的解决方案。

    您也可以尝试使用go。当你进入大型建筑物时,Gps信号通常会迅速衰减。