Patent ID: 8886715

Claim:
A computer-implemented method comprising: identifying, on a client device, one or more map points of interest; identifying, based on the map points of interest, pre-fetch map data tiles to be requested from a remote map database and stored on the client device for eventual rendering of a visual display of map data in response to a subsequent user request; determining, at the client device, a tile budget for storing the pre-fetch map data tiles at the client device; requesting, from a remote map database storing the map data, the pre-fetch map data tiles corresponding to one or more map points of interest; receiving, at the client device, the pre-fetch map data tiles from the remote map database; during receiving of the pre-fetch map data tiles: (i) determining a change in availability, at the client device, of memory or network bandwidth; (ii) in response to determining the change in availability of memory or network bandwidth, dynamically adjusting, at the client device, the tile budget for storing the pre-fetch map data tiles at the client device; and (iii) determining if the tile budget has been met by the received pre-fetch map data tiles, where: when the tile budget has been met, the client device stops receiving additional pre-fetch map data tiles from the map database, and when the tile budget has not been met, the client device continues receiving additional pre-fetch map data tiles from the map database until the tile budget is met or until all pre-fetch map data tiles corresponding to the one or more map points of interest have been received at the client device; and storing the received pre-fetch map data tiles in a local memory on the client device until a subsequent user request.