1. A computer-implemented method comprising: running an instance of a computer application at a first electronic device; determining a backup event that occurs in the first electronic device, wherein the backup event suggests a backup of application state data and the application state data represent an application state of the computer application at the backup event; transmitting the application state data of the computer application to a remote storage service, in response to the backup event; determining a restore event that occurs in a second electronic device, wherein the restore event suggests a restore of the application state of the computer application at the second electronic device; and instructing the remote storage service to transmit the application state data of the computer application to the second electronic device, in response to the restore event, so that the second electronic device is capable of restoring the computer application to the application state using the application state data.