1

I have an app with version 1.1 in one market (say getjar), and the same app with version 1.2 in another market (say amazon) ... this is done for some deeply esoteric reasons :D ... Seriously though, odd versions are FREE, while even versions are PAID.

If the user has already installed ver. 1.2, is it possible (such as setting a flag!) to disallow the phone from installing a lower version of the app?

Thanks,
Rajath

Rajath
  • 11,787
  • 7
  • 48
  • 62

1 Answers1

1

If I understand correctly, you want to stop someone who has installed the app from amazon, from installing the one for getjar in its place. If that is the case, then the easiest way is to use different certificates to sign the apks that you make available through getjar and amazon. if the two apks are signed differently than Android will not permit one to be installed over the other.

This will not someone from manually uninstalling the amazon app, and then installing the getjar one, though.

Mark Allison
  • 21,839
  • 8
  • 47
  • 46
  • I want to allow upgrading of the (same) app, but not allow downgrading. – Rajath Apr 13 '11 at 09:03
  • Ahhh, OK. If you have already released the app in those stores, then this won't work as you'll break the update mechanism for one of them by altering the certificate. If you have yet to release your app, then you could use this technique quite effectively. – Mark Allison Apr 13 '11 at 09:42
  • I'm yet to release the app. But by changing the certificates, the user will not be able to upgrade, right? – Rajath Apr 13 '11 at 09:50
  • If you use different certificates, then the user will be tied to upgrades which are signed with the same certificate. Therefore if you used a different certificate to sign your amazon apk from your getjar one, then users who initially installed from amazon would only be able to upgrade from amazon and not getjar. Unless they manually uninstalled the amazon one first. – Mark Allison Apr 13 '11 at 09:57