Is it possible to install an older version of an app (via .apk), when a newer version is already installed on the device ­– without rooting and patching system with Lucky Patcher or previously uninstalling the newer version?

Some background

This may be a weird question. I'm having the situation that I want to root Sharp SH-06E firmware 1.00.08, as described in this blog post.

Firmware newer than 1.00.07 has new root protection. This new root protection involved preventing installation of hacked VpnFaker.apk to data partition. Hacked VpnFaker is required for rooting process. The blog says that root is possible if VpnFaker is already installed (used to root on firmware older than 1.00.08), but VpnFaker in data partition on my phone is removed during firmware update. (I was on 1.00.01, root, then unroot to update firmware)

Sharp has a lot of root protection, even on firmware older than 1.00.08, the rooting process uses a workaround that mounts system image file in data partition on boot instead of directly writing file to system partition.

VpnFaker is indeed VpnDialogs of Android System 4.0.4, while newer version installed in system partition is version 4.2.2-1.00.08.

Final question

So, is there a way to sign 4.0.4 VpnFaker to have the same signature as 4.2.2 VpnDialogs. Here is the link to the files.

3 Answers 3


Your ending question differs in a little but significant point from your introductionary question. But let's go step by step:

Sure it's possible to install an older version of an app over an already installed newer version. For a user app:

  1. make sure you've permitted installation from (see its tag-wiki for details)
  2. open/launch the .apk file using a file manager, web browser, or similar
  3. the package installer should fire, asking you if you want to replace the installed app by this "older version".

But be aware that though installation most likely succeeds, the app might experience problems if the newer version e.g. had updated the structure of its database (I had this only once yet, and the affected app just force-closed when trying to start it). If in such a case you insist on using the old version, the only way to make it work is to clear its cache and data.

Now to your final question. This is not just about installing an older version, but about signing it. Yes, that can be done as well. You've simply got to ask the developer of the original app to give you his signing key. Trouble is, his answer will (and should) be "no". Alternatively, you might give him the files and ask him to sign them with his key. Assuming it's the manufacturer's company behind it, the expected answer again is a "no", though.

So your real question rather reads:

I've got an app already installed on my device. Is it possible to install a different (older) version of it which has a different signature ­– without rooting and patching system with Lucky Patcher or previously uninstalling the newer version?

The answer is: No, that's not possible:

  • Signature check will fail, so you'd have to uninstall the app first when using the "normal approach" as shown above
  • Overriding this signature check without root IMHO is not possible
  • Changing the signature to match IMHO is not possible unless you've got the developers key
  • Thanks, so there is no ways to extract certificate from 4.2.2 VpnDialogs apk and sign it to 4.0.4 VpnDialogs apk, right? May 25, 2014 at 4:27
  • That would contradict its purpose. If that could be done that easily, every hacker could replace any app with a hacked variant (though it would be hard to get that "hacked variant" on Play), as your device would no longer detect that. It's a security measure; you might compare it with a "PGP signed message", a "certificate of authenticity". To sign, you need the private key, which you don't have.
    – Izzy
    May 25, 2014 at 9:57

Answer is Yes : https://forum.xda-developers.com/android/apps-games/root-appdowner-downgrade-apps-easy-t2828705

You can downgrade your apps (install lower version over actual (higher) version of app) using android feature "pm install -r -d file.apk" , small and simple app which does everything for you. Just pick APK and click on Install APK. That's it.


You can downgrade your app easily by apk file from only 2 simple commands in windows. But there are some prerequisites to it.

  • Have a computer.
  • Adb should be installed in the system.
  • Enable developer option, usb debugging and install via USB option in
    setting. just go through the internet you will understand how can you set these developer option.

Then make sure adb connection is there to the device, and run following commands. Example of windows system:

adb push C://path_to_the_app//app.apk /sdcard/app.apk

adb shell pm install -r -d /sdcard/app.apk

This downgrades your application to whatever the apk version you have, keeping all the previous data of your app.

Note: Setting up adb and developer option is easier so you can just find it out in internet.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .