我在申请位置时遇到问题 LocationManager.requestLocationUpdates
它在我的AVD API 16上返回false,仅在API 16上返回false,并且启用了yes位置。
从onCreat()调用此方法:
void startLocation(){
// first check for permissions
if (ActivityCompat.checkSelfPermission(this, Manifest.permission.ACCESS_FINE_LOCATION) != PackageManager.PERMISSION_GRANTED && ActivityCompat.checkSelfPermission(this, Manifest.permission.ACCESS_COARSE_LOCATION) != PackageManager.PERMISSION_GRANTED) {
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
requestPermissions(new String[]{Manifest.permission.ACCESS_COARSE_LOCATION,Manifest.permission.ACCESS_FINE_LOCATION,Manifest.permission.INTERNET}
,10);
}
}
if(manager.isProviderEnabled(LocationManager.GPS_PROVIDER)) {
manager.requestLocationUpdates(LocationManager.GPS_PROVIDER, 3000, 0, listener);
}else if(manager.isProviderEnabled(LocationManager.NETWORK_PROVIDER)) {
manager.requestLocationUpdates(LocationManager.NETWORK_PROVIDER, 3000, 1, listener);
}else {
Toast.makeText(getApplicationContext(),"Please turn ON gps",Toast.LENGTH_LONG);
finish();
}
}
答案 0 :(得分:0)
问题在于AVD,Google地图也无法访问GPS。