-
Notifications
You must be signed in to change notification settings - Fork 726
Description
Hi ,
- Concerning : getRequestsAround()
there is an error I think in the listener in DriverMapActivity
It never enter in the geoQuery.addGeoQueryEventListener(new GeoQueryEventListener() since there is no GeoFirelocation put in the CustomerMapActivity at "customer_requests":
in DriverMapActivity :
private void getRequestsAround() {
if (mLastLocation == null) {
return;
}
DatabaseReference requestLocation = FirebaseDatabase.getInstance().getReference().child("customer_requests");
GeoFire geoFire = new GeoFire(requestLocation);
geoQuery = geoFire.queryAtLocation(new GeoLocation(mLastLocation.getLatitude(), mLastLocation.getLongitude()), MAX_SEARCH_DISTANCE);
geoQuery.removeAllListeners();
geoQuery.addGeoQueryEventListener(new GeoQueryEventListener() {
@Override
public void onKeyEntered(String key, GeoLocation location) {
if(!mWorkingSwitch.isChecked()){
return;
}
if (mCurrentRide == null) {
for (RideObject mRideIt : requestList) {
if (mRideIt.getId().equals(key)) {
return;
}
}
getRequestInfo(key);
}else{
requestList.clear();
}
}
@Override
public void onKeyExited(String key) {
}
@Override
public void onKeyMoved(String key, GeoLocation location) {
}
@Override
public void onGeoQueryReady() {
}
@Override
public void onGeoQueryError(DatabaseError error) {
}
});
}
Should We listen to the "ride_info" node? If so , how to handle the rest of the code ( the request itself)?
- I broke my head to understand this also but since we handle request now ,. Here is what I did :
private void getAssignedCustomer(){
String driverId = FirebaseAuth.getInstance().getCurrentUser().getUid();
DatabaseReference assignedCustomerRef = FirebaseDatabase.getInstance().getReference().child("ride_info");
assignedCustomerRef.addValueEventListener(new ValueEventListener() {
@OverRide
public void onDataChange(DataSnapshot dataSnapshot) {
if(dataSnapshot.exists()){
mCurrentRide.confirmDriver();
mCurrentRide.parseData(dataSnapshot);
requestList.add(mCurrentRide);
}else{
endRide();
}
}
@Override
public void onCancelled(DatabaseError databaseError) {
}
});
}
- I 've never found the toolbar id in the code in the Driver & Customer Maps Activity :
Ive checked on the corresponding .xml layout file there is no mention of @+id/toolbar neither in the string.xml ressource file
Please Help ;)