美好的一天!
我正在开发一个监控用户位置的 Android应用程序.我正在使用LocationManager来获取用户位置,使用以下方法
我正在开发一个监控用户位置的 Android应用程序.我正在使用LocationManager来获取用户位置,使用以下方法
public void onLocationChanged(Location theLocation) {}
但是,现在我计划在他们的应用登录后立即获取用户的位置.有没有办法通过LocationManager我可以在我的应用程序启动后手动获取位置坐标?
解决方法
使用这种技术:
LocationManager locManager = (LocationManager)getSystemService(Context.LOCATION_SERVICE); boolean network_enabled = locManager.isProviderEnabled(LocationManager.NETWORK_PROVIDER); Location location; if(network_enabled){ location = locManager.getLastKnownLocation(LocationManager.NETWORK_PROVIDER); if(location!=null){ longitude = location.getLongitude(); latitude = location.getLatitude(); } }
在这种情况下,您甚至不需要在GPS上只有您的移动网络才能这样做.
不要忘记在Manifest中给予以下许可:
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/> <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/>