我正在开发一款通过NETWORK_PROVIDER实现该位置的Android应用程序,但我在Android 7上执行它时遇到问题(虽然它在以前的版本中正常运行)。这是代码:
LocationManager posM;
double latitude;
double longitude;
List<Address> addresses = null;
try {
posM = (LocationManager) getSystemService(LOCATION_SERVICE);
Location location = posM.getLastKnownLocation(LocationManager.NETWORK_PROVIDER);
latitude = location.getLatitude();
longitude = location.getLongitude();
Geocoder geocoder;
geocoder = new Geocoder(Activity1.this, Locale.getDefault());
addresses = geocoder.getFromLocation(latitude, longitude, 1);
} catch (IOException e) {
e.printStackTrace();
}
我不知道为什么它会在Android 7上崩溃...谢谢你的帮助
答案 0 :(得分:1)
因为getLastKnownLocation
大部分时间都返回null。系统通常不知道您的location
。使用requestLocationUpdates
或requestSingleUpdate
打开location
检测并获取实际位置。