How to keep two versions of an app installed? Android Market has just updated an app in my device. I liked the update, but its fully different from last version which was also my favorite. So, I want to keep last version too. I have last version's apk thanks to Titanium Backup. But, I can't install it without replacing current one (Android architecture sucks). Is there any way to do this? Hacks etc..
Note: I want to keep current version which must be connected with Market to receive future updates.
It can be done, but not simple for the reasons eldarerathis mentioned.
You need apktool. Refer to this guide on how to use it. And this on signing the apk after you're done.

You need to modify the AndroidManifest.xml file. Find the line that looks like this:

manifest package="com.example.app"


and change it to something like:

"com.example.app.foo"


After you're finished, recompile then resign. To restore your data, try the following via adb:

adb rm /data/data/com.example.app.foo
adb push /data/data/com.example.app /data/data/com.example.app.foo


Where com.example.app is the package name of the original and com.example.app.foo is the modified.

There's always a slight chance that the app will break, or depending on the way the app is structured you may receive a dialog every time you change the screen prompting you to choose which app you want to launch, but it's definitely worth a try if you want it badly enough.

Of course, the two apps will not share the same settings and data.