Cloning an application with its full data store between devices Given a generic application I would like to transfer it, full with its own data, to another device or to the emulator.

After restoring the application and its /data/data/com.app directory it should be supposed to work as normal, provided that its business logic doesn't take into account that the device ID has changed or other facilities (like accounts) are missing.

Copying /data/data/com.app brutally may result in data corruption when app is active.

How do I do that, with or without root?
Solution one: TitaniumBackup
Both devices must be rooted and use TitaniumBackup application. I have found that Titanium doesn't start on Emulator 2.1
Solution two: use adb backup options
Use adb backup and adb restore properly. This would mean to restrict the backup to the single app to be cloned, including its data, but nothing else. This is important as adb restore &lt;file.ab&gt; is an all-or-nothing, no selective restore possible. Full syntax for adb backup is:
adb backup [-f &lt;file&gt;] [-apk|-noapk] [-shared|-noshared] [-all] [-system|nosystem] [&lt;packages...&gt;]

So to only have our &quot;Foobar&quot; app included, we need to connect the device and:
adb backup -f MyBackup.ab -apk com.foobar.app

This done, and adb connected to the emulator, the generated backup file MyBackup.ab then can be restored using
adb restore MyBackup.ab