The solution I found was to serialize the state of the engine as JSON and save it as shared storage. Its a lot of work, but it saves it. Since andengine is going to restart your engine and textures after a pause, I think that there are not many options if you do not want to overwrite some of them and start the game. (what you can)
In my JSON, I write the speed like position, etc. every sprite. The complexity of what will be saved depends on the complexity of your game. And then to each class I added a deserialization method that accepts JSON as input.
As a footnote to this method, I cannot speak in sufficient detail about the amazing GSON library to make this task easier. http://code.google.com/p/google-gson/
But remember when restoring the game to set the restored state to pause, so that the user knows when the game will start again.
source share