在 android 中获取更新位置和禁用 GPS 后如何获取?

Posted

技术标签:

【中文标题】在 android 中获取更新位置和禁用 GPS 后如何获取?【英文标题】:how to get Updated location & Disable GPS after getting it in android? 【发布时间】:2010-10-27 06:23:08 【问题描述】:

朋友们,

我正在使用以下代码获取 GPS 位置

这会导致两个问题

1) 当我的位置发生变化/我将手机从一个区域移动到另一个区域时,我没有得到更新的 gps 位置(纬度/经度)

2) 获取gps位置后,我的手机gps开启了如何关闭?

 double MyDeviceLatitude,MyDeviceLongitude;

public void GetGPSLocation()


 LocationManager locationManager = (LocationManager) getSystemService(Context.LOCATION_SERVICE); 

                       LocationListener myLocationListener = new CurrentLocationListener(); 

                       locationManager.requestLocationUpdates(LocationManager.GPS_PROVIDER, 30, 30, myLocationListener);

                   Location   currentLocation = locationManager.getLastKnownLocation("gps"); 

if(currentLocation != null)
                       

                       MyDeviceLatitude = currentLocation.getLatitude();
                       MyDeviceLongitude = currentLocation.getLongitude();
else


 currentLocation = locationManager.getLastKnownLocation("network");
 MyDeviceLatitude = currentLocation.getLatitude();
 MyDeviceLongitude = currentLocation.getLongitude();







public class CurrentLocationListener implements LocationListener

            public void onLocationChanged(Location argLocation) 
            
                if (argLocation != null) 
                
                    MyDeviceLatitude = argLocation.getLatitude();
                    MyDeviceLongitude = argLocation.getLongitude();
                

            
            public void onProviderDisabled(String provider) 
            

            public void onProviderEnabled(String provider) 
            

            public void onStatusChanged(String provider, int status, Bundle arg2) 
            
            

任何帮助将不胜感激。

【问题讨论】:

【参考方案1】:

UMMA 请检查这个使用广播接收器的类似帖子,这似乎可以解决您的问题android: How to get location information from intent bundle extras when using LocationManager.requestLocationUpdates()

【讨论】:

示例不完整,所以我无法实现:( @UMMA 您需要创建一个 LocationReceiver(扩展 BroadcastReceiver)并将其添加到您的清单中,如链接中所述。请阅读有关如何将此 BroadcastReceiver 与您的活动/服务集成的指南。您可以将获得的位置传递给您的活动/服务。

以上是关于在 android 中获取更新位置和禁用 GPS 后如何获取?的主要内容,如果未能解决你的问题,请参考以下文章

禁用 GPS 的位置更新

Google 地图 (Android) 中的位置更新率

如何同时使用 GPS 和网络提供商在 Android 中获取当前位置的纬度和经度值

在后台服务中使用融合位置获取GPS更新前(15分钟)?

如果 GPS 被禁用,位置将无法进入三星手机

应用程序空闲时如何在android中停止GPS更新?