以下是我的代码:
private Location getLastKnownLoaction(boolean enabledProvidersOnly){
LocationManager manager = mActivityContext.getSystemService(Context.LOCATION_SERVICE);
Location location = null;
List<String> providers = manager.getProviders(enabledProvidersOnly)
for(String provider : providers){
location = manager.getLastKnownLocation(provider);
//maybe try adding some Criteria here
if(location != null) return location;
}
//at this point we've done all we can and no location is returned
return null;
}
我看到塔楼位置显示在较旧的诺基亚手机中。如何在Android中实现类似的功能?“
答案 0 :(得分:1)
确保您的清单上有此内容
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
还必须在真实设备上尝试而不是模拟器。
答案 1 :(得分:1)
在android中只能获得塔位置。你可以做的是:
在您的清单中,添加权限:
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
并在您的代码中,使用
Location location = manager.getLastKnownLocation(LocationManager.NETWORK_PROVIDER);
它可以帮助您检索基于网络的位置。如果它的路线,它最有可能为您提供塔楼位置。
此外,如果您在获取最后一个位置时获得null,则可以申请新位置。