A mobile device for restoring data from a client application over a network to a backup server, wherein the client application is operable by a user of the mobile device, comprising:
- a component for communicating information over the network;
- a processor configured to perform actions comprising:
- generating a plurality of communications by the client application, wherein the plurality of communications is associated with recordable actions performed within the client application, and wherein the plurality of communications is configured to cause a backup server to mark for backup at least one of the recordable actions;
- sending from the mobile device, each of the plurality of communications separately while performing at least one of the plurality of recordable actions, responsive to saving the memory item in the mobile device;
- and
- receiving from the backup server in response to a restore request, a backup historical record for restoring data associated with the recordable actions, wherein the data comprises a navigation history configured to enable the user to navigate within the navigation history, wherein the client application enables navigation through pages associated with actions performed on the mobile device within the client application, and wherein the historical record backup includes a record of a sequence of the pages traversed while navigating through the pages of the client application, such that restoration of the historical record enables traversing through the pages of the client application in reverse sequence with a back button, and wherein the restore request is a request for downloading another version of the client application onto the mobile device, and wherein receiving the backup historical record is performed automatically based the download of the other version of the client application without need for the mobile device to initiate further interactions with the backup server.