在我的Android应用程序中,我使用类似的地址列表进行了不同的活动。我需要至少在10秒的间隔内向它们显示(更新)距离(以km为单位)。但我不知道从任何活动随时组织快速访问实际当前位置的正确方法。
如果我使用LocationManager
方法重载启动画面活动&将当前坐标存储在Application
对象&从活动中调用一些((MyApplication)getApplicationContext()).getCurrentPos()
来获取当前位置,这是解决此问题的正确方法吗?
或者我应该创建singleton&用Application.onCreate()
方法初始化它?或者怎么样?
答案 0 :(得分:0)
我使用自定义单例位置管理器类解决了同样的问题。
我的位置管理器基于应用程序上下文,它包含GoogleApiClient对LocationService API所需的实现(我正在使用FusedLocation API)。
如果您在启动时使用自定义位置管理器(您也可以在此处理Android 6.0及更高版本所需的权限),那么在其他活动中使用这样的简单调用代码来访问当前位置:
MyLocationManager.getInstance().getCurrentPos();