Вам не нужно сохранять Intent
для удаления геозон, и то, что вы пытаетесь сделать, не сработает.
API removeGeofences занимает PendingIntent
. При сравнении двух PendingIntents, чтобы увидеть, равны ли они, они следуют правилам Intent.filterEqual () :
Определите, совпадают ли два намерения для целей разрешения намерений (фильтрации). То есть, если их действие, данные, тип, класс и категории совпадают. При этом не сравниваются никакие дополнительные данные, включенные в намерения.
До тех пор, пока вы можете создать намерение с той же информацией, что и раньше, вы можете создать новый PendingIntent
и при этом сохранить его.
Или вы можете использовать метод removeGeofences () , который принимает идентификаторы запроса String, которые вы можете добавить в свою геозону с помощью setRequestId () . Тогда вам нужно только отслеживать строки, чтобы отменить геозоны.