Я пытаюсь получить значение name и phone как name = "name", phone = "123456".Как я могу решить это?
Структура моей базы данных: пользователи / драйверы (name = "Name", phone = "123456")
Класс My Rider:
public class Rider {
private String name,email,password,phone;
public Rider(){}
public Rider(String name, String phone){
this.name=name;
this.phone=phone;
}
public String getName() {
return name;
}
public String getPhone() {
return phone;
}
public void setName(String name){
this.name=name;
}
public void setPhone(String phone){
this.phone=phone;
}
Класс моей активности:
public void onKeyEntered(String key, GeoLocation location) {
FirebaseDatabase.getInstance().getReference("Users").child("Drivers")
.child(key).addListenerForSingleValueEvent(new ValueEventListener() {
@Override
public void onDataChange(@NonNull DataSnapshot dataSnapshot) {
Rider rider=dataSnapshot.getValue(Rider.class);
mMap.addMarker(new MarkerOptions()
.position(new LatLng(mLastLocation.getLatitude(),mLastLocation.getLongitude()))
.flat(true)
.title(rider.getName())
.snippet("phone:"+rider.getPhone())
.icon(BitmapDescriptorFactory.fromResource(R.mipmap.ic_car_background)));
}
Ошибка: com.google.firebase.database.DatabaseException: Не удалось преобразовать значение типа java.lang.Long в строку