Удаление узла автоключей из firebase android - PullRequest
2 голосов
/ 03 марта 2020

Я не уверен, правильно ли я это делаю, но я создаю запрос, чтобы получить автоматически сгенерированный ключ, который хранится в firebase. Я хочу удалить этот ключ из firebase. Мне интересно, если это правильный процесс? Как можно просто позвонить removeValue() по запросу или использовать Datasnapshot? Мой код выглядит следующим образом. Все, что он делает, это получает автоматически сгенерированный ключ и печатает его.

DatabaseReference ref = FirebaseDatabase.getInstance().getReference(); String removeQuery = ref.child("EventData").push().getKey(); System.out.println(removeQuery); Log.d(TAG,"Remove Query was called !!!!!!!!!!!!");

Обновлено1 enter image description here

Обновлено2

Есть ли простой способ установить removeQuery в ноль?

Ответы [ 2 ]

2 голосов
/ 03 марта 2020

Здесь:

DatabaseReference ref = FirebaseDatabase.getInstance().getReference(); 
String removeQuery = ref.child("EventData").push().getKey();

Вы создаете новый ключ и сохраняете его внутри переменной. Вы можете сделать это в начале (при сохранении данных в базе данных), добавив данные в Intent:

DatabaseReference ref = FirebaseDatabase.getInstance().getReference(); 
String removeQuery = ref.child("EventData").push().getKey();
Intent intent = new Intent(getBaseContext(), Activity.class);
intent.putExtra("key", removeQuery);
startActivity(intent);

, а затем в другой операции вы можете удалить, как это:

DatabaseReference ref = FirebaseDatabase.getInstance().getReference(); 
String key = getIntent().getStringExtra("key");
ref.child("EventData").child(key).removeValue();
0 голосов
/ 03 марта 2020

Вы должны сохранить pushID, равный M1VA.... и тогда вы можете удалить, как это. Ссылка на эту ссылку: https://firebase.google.com/docs/database/android/read-and-write#add_a_completion_callback

mDatabase.child("EventData").child("M1VA....").removeValue()
        .addOnSuccessListener(new OnSuccessListener<Void>() {
            @Override
            public void onSuccess(Void aVoid) {
                // Write was successful!
                // ...
            }
        })
        .addOnFailureListener(new OnFailureListener() {
            @Override
            public void onFailure(@NonNull Exception e) {
                // Write failed
                // ...
            }
        });
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...