Skip to content

How to handle getRequestsAround()t and //TODO getAssignedCustomer(); in DriverMapActivity? Problem also with toolbar Id #41

@Coco0185

Description

@Coco0185

Hi ,

  1. 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)?

  1. 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) {
        }
    });
}
  1. I 've never found the toolbar id in the code in the Driver & Customer Maps Activity :
    image
    Ive checked on the corresponding .xml layout file there is no mention of @+id/toolbar neither in the string.xml ressource file

Please Help ;)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions