0

J'ai ajouté des géofences à l'API Google Geofence comme au that example. de temps en temps, je voudrais effacer ces geofences (soit un par un ou tous togehter), indépendamment de leur date d'expiration, etc.Comment effacer toutes les géofences introduites dans l'API google Geofence?

mGeofenceList.add(new Geofence.Builder() 
    // Set the request ID of the geofence. This is a string to identify this 
    // geofence. 
    .setRequestId(entry.getKey()) 

    .setCircularRegion(
      entry.getValue().latitude, 
      entry.getValue().longitude, 
      Constants.GEOFENCE_RADIUS_IN_METERS 
    ) 
    .setExpirationDuration(Constants.GEOFENCE_EXPIRATION_IN_MILLISECONDS) 
    .setTransitionTypes(Geofence.GEOFENCE_TRANSITION_ENTER | 
      Geofence.GEOFENCE_TRANSITION_EXIT) 
    .build()); 

Comment puis-je effacer les geofences introduits dans l'API Google Geofence par moi-même ?

Répondre

0

Appelez removeGeofences(GoogleApiClient client, PedingIntent pendingIntent) pour supprimer toutes les géofences associées au pendingIntent donné.

Utilisez FLAG_UPDATE_CURRENT plutôt que FLAG_CANCEL_CURRENT lors de la création de l'intention dans l'attente, sinon vous ne serez pas la même intention en attendant que vous avez fourni à addGeofences (GoogleApiClient, Liste, PendingIntent) https://developers.google.com/android/reference/com/google/android/gms/location/GeofencingApi.html#addGeofences(com.google.android.gms.common.api.GoogleApiClient, com.google.android.gms.location.GeofencingRequest, android .app.PendingIntent)] et ainsi l'opération de suppression ne supprimera rien.