A non-transitory computer-readable storage medium comprising instructions that, when executed, cause a processor to:
- obtain for each non-executable data resource of a set of non-executable data resources stored on a remote computing device one or more predetermined values associated with a user for one or more context dimensions, each context dimension identifying a circumstance of a previous access to a particular non-executable data resource stored on the remote computing device, each predetermined value being calculated based on one or more then-current values for the one or more context dimensions when the user previously accessed the particular non-executable data resource of the set of non-executable data resources;
- determine, when the user is using a mobile device, current values for the one or more context dimensions;
- compare the current values for the one or more context dimensions to the predetermined values for the one or more context dimensions;
- determine scores for each of the one or more context dimensions based on the comparison, where the scores indicate how close the current values are to the predetermined values for each of the one or more context dimensions, including comparing a current time of day to a previous time of day when the particular non-executable data resource was previously accessed by the user;
- determine, based on the scores, a subset of the set of non-executable data resources that have a high probability of being accessed by the user;
- obtain by the mobile device information indicative of the subset of the set of non-executable data resources;
- present on the mobile device, using the information, a user interface with a link to access each non-executable data resource of the subset of the set of non-executable data resources;
- receive a selection of a particular link to a particular non-executable data resource of the subset of the set of non-executable data resources;
- and
- in response to the selection of the particular link to the particular non-executable data resource of the subset of the set of non-executable data resources, determine whether one of the plurality of native applications is associated with the particular non-executable data resource associated with the particular link, and when at least one of the plurality of native applications is associated with the particular non-executable data resource associated with the particular link, execute the instructions for the at least one of the plurality of native applications to access the particular non-executable data resource associated with the particular link, and when none of the plurality of native applications is associated with the particular non-executable data resource associated with the particular link, execute the instructions for a native application simulator to access the particular non-executable data resource associated with the particular link,
- wherein the native application simulator intercepts specific input commands and translates the specific input commands to analogous commands of an application associated with the particular non-executable data resource.