创建了基于位置警报的应用。在模拟器上一切正常。但是在实际设备中会出现以下错误。
情景:
打开GPS。 在手机中打开我的应用程序。 状态栏中没有GPS符号。 应用程序关闭。
要解决此问题,我正在做以下事情
打开地图,GPS Essentials等任何应用程序。 我的GPS值正在修复。 之后打开我的申请。 应用程序正常工作。
在下面提供必要的代码:
在我的Oncreate方法中
fixlocation = orgManager.getLastKnownLocation(LocationManager.GPS_PROVIDER);
@Override
protected void onResume() {
super.onResume();
orgManager.requestLocationUpdates(LocationManager.GPS_PROVIDER, 0, 1000, this);
orgManager.requestLocationUpdates(LocationManager.NETWORK_PROVIDER, 0, 1000, this);
mo.enableCompass();
mo.enableMyLocation();
}
/** Stop the updates when Activity is paused */
@Override
protected void onPause() {
super.onPause();
orgManager.removeUpdates(this);
mo.disableCompass();
mo.disableMyLocation();
}
@Override
public void onLocationChanged(Location location) {
// TODO Auto-generated method stub
//orgManager.removeUpdates(this);
if (location != null) {
currLatitude = location.getLatitude();
currLongtitude = location.getLongitude();
}}
我现在需要做什么?
答案 0 :(得分:0)
LocationManager lm = (LocationManager) getSystemService(Context.LOCATION_SERVICE);
Location location = lm.getLastKnownLocation(LocationManager.GPS_PROVIDER);
currLat = location.getLatitude();
currentLang = location.getLongitude();
尝试此操作以获取当前位置。
onLocationChanged仅在您的设备位置发生变化时才会调用
首次启动应用程序时,您可以使用此代码。