我正在尝试设计一个需要一次又一次需要用户当前位置的应用。因此,每当蜂窝数据可用时,我使用移动网络来获取当前用户位置。如果移动网络不可用,我是否可以可靠地使用GPS来访问当前位置。如果没有,有人可以建议在这种情况下我该怎么做? 编辑:位置服务并不能很好地运作。我已经尝试过使用它了。
答案 0 :(得分:0)
我认为你应该看看Android Location API: https://developer.android.com/google/play-services/location.html
Android使用他们所谓的Fused location provider。 Android(通过谷歌播放服务)负责选择哪个提供商(GPS,传感器,WIFI指纹识别...)最适合每次获取当前用户位置。
我认为这是一项很棒的技术,API使用起来非常简单
答案 1 :(得分:0)
根据Google文档:
了解用户的位置可使您的应用程序更智能,并为用户提供更好的信息。在为Android开发位置感知应用程序时,您可以利用GPS和Android的网络位置提供程序来获取用户位置。虽然GPS是最准确的,但它只能在室外工作,它很快就会消耗电池电量,并且不会像用户想要的那样快速返回位置。 Android的网络位置提供商使用手机信号塔和Wi-Fi信号确定用户位置,以室内和室外工作方式提供位置信息,响应速度更快,电池电量更少。要获取应用程序中的用户位置,您可以同时使用GPS和网络位置提供程序,也可以只使用一个。
如果您想了解更多细节,可以查看:
http://developer.android.com/guide/topics/location/strategies.html
答案 2 :(得分:0)
是如果没有可用的网络,那么您可以使用GPS,但我们必须巧妙而有效地使用它 因为GPS提供比网络更准确的位置,但它会缩短电池寿命,你也可以使用Pending Intent在位置监听器的位置获取位置和广播接收器
但是我建议你通过这个链接更详细地了解这个主题
These are some smart coding concepts for increasing battery life