Я разрабатываю приложение, которое позволяет его пользователям видеть автобусы и поезда определенной компании в режиме реального времени.
В настоящее время водитель регистрирует автобус или трамвай, выбирая, с каким маршрутом / линией он работает.адрес электронной почты и пароль, которые размещаются в определенном узле в Firebase.Например, если драйвер выбирает красную линию, его UID помещается в шину Users => Drivers => RedLine =>.
Затем, когда драйвер входит в систему, он может переключить переключатель «Я работаю»,который передает свое местоположение пользователям.
Но когда это произойдет, я хочу, чтобы этот userID (userUID) был помещен в узел "driversAvailable" в разделе Branch, который является маршрутом, под которым указан UID в Users =>Драйверы, но я сражаюсь, чтобы найти ответы.
void saveGeoFire(){
final String userId = FirebaseAuth.getInstance().getCurrentUser().getUid();
final DatabaseReference ref = FirebaseDatabase.getInstance().getReference("driversAvailable").child("drivers");
final DatabaseReference driversRouteRef = FirebaseDatabase.getInstance().getReference().child("Users").child("Drivers");
ValueEventListener driversAvailableEventListener = new ValueEventListener() {
@Override
public void onDataChange(@NonNull DataSnapshot dataSnapshot) {
if(dataSnapshot.exists()) // in Users => Driverrs => RedLine for example
{
//Create new Branch in "driversAvailable" => Drivers => RedLine => userID
}
}
@Override
public void onCancelled(@NonNull DatabaseError databaseError) {
}
};
driversRouteRef.addListenerForSingleValueEvent(driversAvailableEventListener);
}
Моя текущая база данных Firebase: