J'utilise ce code dans Android 6.0 pour obtenir la position:Emplacement code ne fonctionne plus
public class MainActivity extends AppCompatActivity implements LocationListener{
protected LocationManager locationManager;
protected LocationListener locationListener;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
locationManager = (LocationManager) getSystemService(Context.LOCATION_SERVICE);
if (checkPermission())
locationManager.requestLocationUpdates(LocationManager.GPS_PROVIDER, 0, 0, this);
}
@Override
public void onLocationChanged(Location location) {
lati = location.getLatitude();
longi = location.getLongitude();
}
@Override
public void onProviderDisabled(String provider) {
Log.d("Latitude", "disable");
}
@Override
public void onProviderEnabled(String provider) {
Log.d("Latitude", "enable");
}
@Override
public void onStatusChanged(String provider, int status, Bundle extras) {
Log.d("Latitude", "status");
}
private boolean checkPermission(){
if (ActivityCompat.checkSelfPermission(this, Manifest.permission.ACCESS_FINE_LOCATION) != PackageManager.PERMISSION_GRANTED && ActivityCompat.checkSelfPermission(this, Manifest.permission.ACCESS_COARSE_LOCATION) != PackageManager.PERMISSION_GRANTED) {
// TODO: Consider calling
// ActivityCompat#requestPermissions
// here to request the missing permissions, and then overriding
// public void onRequestPermissionsResult(int requestCode, String[] permissions,
// int[] grantResults)
// to handle the case where the user grants the permission. See the documentation
// for ActivityCompat#requestPermissions for more details.
return false;
}
return true;
}
}
définir les permissions dans les propriétés des programmes true.
Il travaillait mais maintenant il ne trouve jamais les satellites ou la position en général.
cartes Google trouve immédiatement satellites.
De quoi ai-je besoin pour changer?
Que se passe-t-il? Erreur? quel point voir? ?? – josedlujan
Rien. L'icône de localisation est apparue et il semblait qu'elle cherchait une position sans en trouver une. Puis j'ai ouvert Maps et il était là, l'emplacement, immédiatement. Ce n'est donc pas un problème matériel. –
@ P.Dee Essayez de changer 'compileSdkVersion' et' targetSdkVersion' en 22 et ensuite si ça marche bien alors son problème d'autorisation. Vous devez demander l'autorisation de localisation dans les appareils 'Marshmallow +'. – DwlRathod