(Apologies for the duplication -- I posted this in the Litecoin issue tracker recently.)
Having tried many different virtual currency wallets, i'm finding that backups are messy and poorly designed. And I didn't see this issue discussed in the existing issues here, so below are a few ideas for consideration.
Backups should be easy and fail-safe.
At backup time, the user should need to neither type nor read and record any encryption key. People make typographical mistakes all the time, especially on a small smartphone screen. Instead, a predetermined public key should be used to encrypt the backup, similar to the way GPG encrypts messages. Later on, at restore time, the private key will be used to do the restore. This private key need not be known to the program creating the backup.
The backup file should include essential information in it name. E.g.: name of program, backup format, datestamp. So simply looking at the filename will tell us at restore time how to use the file. The person doing the restore might be a knowledgable friend, not the naive user doing the backup, so let's save them some trouble trying to guess where the backup came from.
In addition to saving to mass storage, also, wherever possible, send the backup by email in the background so the user doesn't have to think about it. This might be possible on most desktop machines. On an Android device, invoke the mail program with the destination address already filled in, so the user needs to only press Send.
If possible, Android apps should also save the backup in a place where it will automatically get backed up by Google's "Android Backup Service", ready for restore should the Android device go through a factory reset and/or be replaced by another.