I have built an android tablet application which is installed only from my web site - manual install.
I will need to be able to provide updates to existing users through the same site - without obliging users to uninstall the existing application.
What do I need to change in my (eclipse) project to permit this ?
Simon -
Apps are designed to be upgraded in place on Android. All you need to do is ensure that the version number of the app being installed is greater than the previous version.
You can still provide debug releases, simply increment a portion of the version to reflect that change and your users can keep getting updates. Otherwise, you may want to have an explicitly Debug and Release version that can be installed side by side and not conflict with each other, but that may be more trouble and confusing than its worth.
Related
I have very specific requirements wherein I would like to provide our latest version apk access to user through open beta testing and want to stop the version lying on prodcution. Challenge here is how can migrate user from production to beta new version?
Let's say I deploy version 10.1 at open beta and want to migrate existing user which are already using production app. If possible how can I do that?
How can I stop production version as restricting features?
No - it is not possible to disable a version of an APK, or to force users to upgrade.
From the Android Developer Docs on app versioning:
The Android system does not use app version information to enforce
restrictions on upgrades, downgrades, or compatibility of third-party
apps. Instead, you are responsible for enforcing version restrictions
within your app or by informing users of the version restrictions and
limitations.
The closest you can get is checking the application version on the server side (either by manually passing the version or by inferring from the request message format) and restricting use of your API to newer versions of the app.
I know on iOS that if you raise the min iOS version on a release it means that any devices that are unsupported can still download the previous application that does support them.
Is there such a thing on Android or is at as soon as you release the new APK, the old one is removed from sale?
Whether the APK is removed or not depends on you - if you keep both versions active, GP will resolve which one should every user get - those with newer APIs will get updated one, those with old APIs will still be able do download previous version.
If you are really into "separate API", read this article.
EDIT:
I believe similar question was asked here.
If you raise sdk version user with old sdk will not be able to download it. If user has already installed apk with old sdk and you update apk in gplay, he can use it while he doesn't uninstall it manually.
I'm planning to release an application and later on release debug or edit version as well.
But what if I release my app version as 1.1, and I release the version 1.2 later on.
Then, there must be some people who downloaded new version 1.2, but others might still keep the version 1.1
Is there any way to disable the version 1.1 which is already installed in Users' smartphone?
Or.. is there any way to update the previous version 1.1 to the latest version 1.2 in users' smartphone automatically without any process??
As a matter of fact, I want all users to use my application's latest version in order to provide new adds/items to entire users.
If there's any way, please let me know!!
You can't force users to upgrade to the newest version of your app. Really the best you can do is notify them that there is an update available for your app and encourage them to download it. For that I would start here.
i'm new in android developing. (and in developing after all)
Here is my problem: If i install my android application onto my mobile device or AVD, i want it to check the current app version number and if it's lower than the one i want to install currently then install it, and if it is higher , then alert the users that they already use the latest version.
Because now when i install the .apk file, it just installs the app again and nothing happens.
Is it possible to develop this?
Best regards,
weeyas
The install process is managed at the system level, so your application has no control over it. As per the versioning guide, the Android system will only allow you to install updates from the same or newer version codes (i.e., version 1 can be replaced by version 2, but version 2 can never be overridden by version 1 unless you do a complete uninstall/reinstall). This applies to both Google Play updates and sideloading APKs yourself.
I don't know if it is possible if you try to install application from .APK file. However, you will not be able to publish the newest apk to Google Play if it has the same or lower version number than the current one.
I have an application already installed on the mobile, am trying to install the update version of it.
I placed the apk inside the data/data folder, using file manager at the path,am trying to install it -
it shows a dialog to replace but not upgarde (Signed with the same key-store and version code/version name has an incremental value).
Could someone explain me more on this?
There is a difference between installing and subsequently, updating, apps off Google Play. Applications installed via a File Manager, for instance, will always prompt you to replace and not update an application. Side-loading apps on devices directly, does not have that mechanism to update. This is true not only for your app, but for every app.
It does not matter how it was signed or even the increment of your app's version.
Upgrade is only possible when you actually follow the installation procedure from Android Market. Else, it would just be a replace.