web-dev-qa-db-fra.com

Le constructeur LocationRequest est marqué comme interne

J'essaie de configurer les mises à jour d'emplacement dans mon Android à l'aide de com.google.Android.gms:play-services-location:12.0.0], Mais le message d'erreur suivant s'affiche:

Le constructeur LocationRequest est marqué comme interne et ne doit pas être accessible à partir d'applications

Ma demande de mises à jour de localisation ressemble à ceci:

locationClient.requestLocationUpdates(
    new LocationRequest()
        .setInterval(5000)
        .setFastestInterval(1000)
        .setPriority(LocationRequest.PRIORITY_HIGH_ACCURACY),
    locationCallback,
    null
);

J'ai suivi le docs et le exemple , qui le font de la même manière. Si je ne suis pas censé appeler new LocationRequest(), alors quelle est la bonne façon de le faire?

33
Duncan Luk

Utilisez la méthode statiqueLocationRequest create ().

 LocationRequest locationRequest = LocationRequest.create();
 locationRequest.setPriority(LocationRequest.PRIORITY_HIGH_ACCURACY);
 locationRequest.setInterval(5000);
 locationRequest.setFastestInterval(1000);
64
ADM

La procédure d'initialisation LocationRequest est passée aux dernières dépendances du service Google Play (> 12.0.0). Maintenant, vous pouvez utiliser sa méthode create () pour l'initialiser. par exemple.

LocationRequest request = LocationRequest.create();
13
Rahul Sharma