Нужна помощь в выборе базы данных для Android

# #android #firebase #firebase-realtime-database

Вопрос:

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

И я использую этот код, чтобы проверить, является ли проверенное поле истинным или нет.

                 ref.child(activation_code).addValueEventListener(new ValueEventListener() {
                    @Override
                    public void onDataChange(@NonNull DataSnapshot dataSnapshot) {
                        for (DataSnapshot data : dataSnapshot.getChildren()) {
                            ActivationModel model = data.getValue(ActivationModel.class);
                            Log.d("            ", model.getCode());
                            Toast.makeText(Setup.this, "" model.isVerified(), Toast.LENGTH_SHORT).show();
                            if(model==null){
                                Toast.makeText(Setup.this, "Enter Valid Code!!", Toast.LENGTH_SHORT).show();
                            }else{
                                if(model.isVerified()){
                                    Toast.makeText(Setup.this, "Code is already used, Please Enter valid code.", Toast.LENGTH_SHORT).show();
                                }else{
                                    Toast.makeText(Setup.this, "Code worked..", Toast.LENGTH_SHORT).show();
                                    ref.child(activation_code).child(activation_code).child("verified").setValue(true).addOnCompleteListener(task -> {
                                        Toast.makeText(Setup.this, "field changed.", Toast.LENGTH_SHORT).show();
                                    });
                                }
                            }
                            break;
                        }
                    }

                    @Override
                    public void onCancelled(@NonNull DatabaseError databaseError) { }
                });
 

Теперь проблема заключается в вводе допустимого кода, поэтому я обновляю verified до true , поэтому firebase обновляет данные и снова проверяет условие и создает Toast уже использованный код.

Есть ли какой-нибудь способ, которым я могу справиться с этим?

Комментарии:

1. Что именно в этом коде работает не так, как вы ожидаете? Расскажите нам, что не так с общим кодом. Есть ли у вас какие-либо ошибки?

2. В коде нет ошибки, но поскольку данные синхронизации бд в реальном времени с приложением изменены в firebase, я изменяю поле verified на true после действительного кода активации, но как только поле изменилось, приложение обновит код и выдаст мне ошибку: «код уже используется, пожалуйста, введите действительный код».