9

Normally I can reinstall (preserving application data) APK only when it's signature matches the previous one.

How do I force upgrading of the application signed with a different key (for example, from a distribution version to a self-compiled version, for example) without removal of the data (i.e. uninstallation) using root access?

Workaround is backup application's data + uninstall + install + restore data, but that is inconvenient and notifies other applications about [un]installation which is not intended.

Ideally this should be a one-off exception that I personally approve, not just disabling of the whole signature verification mechanism.

7
  • 2
    Patch the system to ignore the signature when installing an application. Apps like LuckyPatcher allow that.
    – GiantTree
    Commented Dec 23, 2015 at 23:21
  • What about replacing the APK in /data/app followed by a soft/full reboot?
    – Firelord
    Commented Dec 23, 2015 at 23:29
  • 1
    A reboot is also inconvenient. I want seamless switching between development and repository versions.
    – Vi0
    Commented Dec 23, 2015 at 23:38
  • In this case: Sign the development version with the same signature as your production version. Works like a charm.
    – GiantTree
    Commented Dec 23, 2015 at 23:45
  • 1
    I don't have the key for production, also F-Droid signs applications with it's own key. The workflow is: 1. Install app from F-Droid, 2. Want to contribute a fix/feature, so built from source; 3. Installed from source, tested, etc; 4. The fix is finally upstream. Self-built version is no longer needed; 5. Want to update app from F-Droid again.
    – Vi0
    Commented Dec 23, 2015 at 23:55

2 Answers 2

3

You can use an app called 'Lucky Patcher' witch contains many system tweaks, (root and busybox are required) then follow the following steps:

  1. Go to 'Toolbox' tab in the buttom.
  2. Select 'Patch to Android'.
  3. Check 'Disable signature verification in the package manager'.
  4. Press 'Apply' and wait for your phone to reboot.

and that's it. 'Lucky Patcher' also has an Xposed module to do the same task if Xposed is already installed in your system.

0
2

Use XInstaller, you need root. you also need Xposed to activate XInstaller.

When all set up, go to XInstaller and choose installation, then choose Checking signatures. When you're done, always remember to enable checking signatures.

Here's download links: Xposed installer and XInstaller

0

You must log in to answer this question.

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