1. A method of providing navigation assistance, comprising: at a mobile device having one or more processors and memory for storing programs to be executed by the one or more processors: storing respective geographic positions for a set of points of interest (POIs); while storing the respective geographic positions of the set of POIs, determining a current location and a current viewing direction of a user; based on the stored geographic positions and the current location and viewing direction of the user, identifying, from the set of POIs, a subset of POIs within a current field of view associated with the user; and mapping the current location of the user and the respective geographic positions of the subset of POIs onto a user interface displayed on the mobile device.