geofire.removeLocation (ключ) Не удаляет расположение - PullRequest
1 голос
/ 24 мая 2019

Я пытаюсь удалить местоположение пользователя из базы данных Firebase, но он не удаляет ключ при вызове

Этот код находится в службе.

geofire.removeLocation(uniqueID);

Уникальный идентификатор генерируется какthis

   static String uniqueID = UUID.randomUUID().toString();;

LocationCallBack для отправки Location в базу данных Firebase

    LocationCallback mLocationRequestCallback = new LocationCallback(){
        @Override
        public void onLocationResult(LocationResult locationResult) {
            for(Location location : locationResult.getLocations()){
                mLastLocation = location;
                DatabaseReference userRef = FirebaseDatabase.getInstance().getReference().child("usersAvailable").child("Users");

                GeoFire geoFire = new GeoFire(userRef);
                geoFire.setLocation(uniqueID,new GeoLocation(mLastLocation.getLongitude(),mLastLocation.getLatitude()));
                Log.d(TAG,uniqueID);
            }
        }
    };

Я попытался жестко запрограммировать ключ, и он не работает.Я добавил в завершение прослушиватель, чтобы проверить, удаляет ли он, и завершает ли прослушиватель процессы, но все еще не удаляет ключ.

    @Override
    public void onDestroy() {
        super.onDestroy();
        mFusedLocationClient.removeLocationUpdates(mLocationRequestCallback);
        wakeLock.release();
        DatabaseReference ref = FirebaseDatabase.getInstance().getReference().child("userAvailable").child("Users");

        GeoFire geoFire = new GeoFire(ref);
        geoFire.removeLocation(uniqueID, new GeoFire.CompletionListener() {
            @Override
            public void onComplete(String key, DatabaseError error) {
                Log.d(TAG, "Removed Location Successfully: "+uniqueID);
                Log.e(TAG,key+"\n"+error);
            }
        });
    }

Журнал

D/GeoJobService: Removed Location Successfully: 63825afd-7710-4cd7-b799-7be049281862
E/GeoJobService: 63825afd-7710-4cd7-b799-7be049281862
    null

Что я делаю неправильно,Я не могу найти другие сообщения, которые мне помогают.

Редактировать

Я добавил это, и до сих пор не удалил ключ в Базе данных.

 DatabaseReference ref = FirebaseDatabase.getInstance().getReference().child("userAvailable").child("Users");
        ref.child(uniqueID).removeValue();
...