Life cycle of an application: how do I manage the updates - android

I have 2 apps published but I don't know how to manage the life cycle of the application. For example if I have a bug, the way I do it now: once I have a correction for the bug I go into studio->file->project structure->flavors, I increment the version code, then build the APK. Then I go into GPC->APK menu,upload new APK to prod.
I think this is not the right way to do. It obliges the user to un-install and re-install.
How do I manage updates?
How do I manage patches?
Sorry about the dumb questions. I've searched for docs but struggle to find it.

No, you are doing it correctly.
Whenever you fix any bug or add a new feature and feel that your app is ready to be updated in Play Store, you need to increment your versionCode and versionName.
Now, you need to open Google Play Console and upload the new APK. Incrementing the versionCode is mandatory for Google Play to consider it as an update.
Don't worry, the users will not need to uninstall the old app and reinstall the new app manually. Everything is handled seamlessly by the Google Play app installed on the user's device.
And the users also don't download the entire app after every update. Google now uses File-by-File patching to reduce the app update size drastically. So, in simple words, the users only download the changed and they get patched automatically.
EDIT
You need to increment the versionCode for the updates to happen. The versionName is only shown to the user so that they can understand that it is an update over the previous version. The versionCode is used for internal purposes and is not shown to the user.
Ex - If your versionCode is 10, you can increment it to 11 for an update to happen, even if the versionName is not changed at all. But it is RECOMMENDED to change the versionName in accordance with the versionCode so that your users can understand that you have updated the app.

Related

Google Play. Publish an app only to new users

I have a published app in google play. Is it possible to publish an app update, that will affects only the new users? So the existing users will not be able to update.
Thanks!
If by "new users" you mean the normal public that did not install your app yet, then no. That is not possible. Once you publish your app, anybody will be able to access the new version.
You could potentially publish it under a different app-id as a brand new app that just happens to be an almost exact copy of your old app, then there will be no update path from one to the other, but there is no way that "new users" wouldn't find your original app first, or that old users wonder what that weird new clone app is.
If you want an app that is only available to a specific set of people for testing, or create different apps for experimenting, you can read up on it here: https://support.google.com/googleplay/android-developer/answer/12053285
Actually it is possible and is related to versionCode.
Basically, if you upload an app with versionCode lower than already installed by your users, they will not be able to update, just new user will.
Google explain some use cases where it would be used:
In some specific situations, you might wish to upload a version of
your app with a lower versionCode than the most recent version. For
example, if you are publishing multiple APKs, you might have pre-set
versionCode ranges for specific APKs. For more about assigning
versionCode values for multiple APKs, see Multiple APK Support.

If Android app is not going to the Play Store, is there any need to increment versionCode?

So far I can only find information as to why you want to increment the versionCode (for Play Store purposes), but I cannot find any information on any pitfalls that might be a result of not incrementing it.
Currently it is more advantageous for me to keep the versionCode at 1 so that I can easily downgrade the application without uninstalling the newer version first if the need ever arises. Is anyone aware of any issues not incrementing the versionCode might cause outside of the Play Store?
There are no "issues", except for the fact that you will never know what actual version of the software is installed on any given device if all the versions of the software have the same versionCode. This is just standard, recommended, best practice in software development: You should always be able to tell exactly what code is running on any given device at any given time. If that isn't necessary for you, and you see advantages in leaving the versionCode unmodified, then go right ahead.

After updating new app on play store it is showing old verison only

Today I had updated one application on play store. This app was present previously on play store, but before some months we had removed this application. Now after some code changes we had release this app again for 20% user. Now the problem is on play store it is showing old application(which we had removed some months before). Does we miss something or it will take 2-3 hr to reflect the same.
The developer doesn't actually have to change the 'Version' number that shows in the Play Store, they only need to increment a build version (which is not visible anywhere in the Play Store) so the version that is shown may not change. This allows for quick fixes to be pushed out without incrementing the actual version number.
Refer this link:
https://android.stackexchange.com/questions/155018/app-updation-google-play-store-wants-to-update-an-older-version-of-app-when-lat
In my case my current app version is versionCode 28,but some of my users are installing versionCode 17 or 21.Once they install the old one,we are usinf FirebaseRemoteConfig inside all of our apps so we are prompting to update to latest 28th version.But still i couldn't find the reason for Old app's availablity in Playstore.Its annoying

Updating android app in Google play requires change in both version and versioncode?

I am trying to update an app on Google PLay. Do i need to update both?
android:versionName and
android:versionCode
I updated without changing the versionName, I ONLY changed the versionCode. Does it count as an upgrade? Will the user see the update available? Thanks in advance!
Yes, the user will still receive an update.
versionCode is the deciding factor when Google Play issues updates. Your versionName can stay the same for your app's entire existence, and Google Play will still issue updates.
VersionCode needs to be changed. It's the value used by Android to determine your version. VersionName is shown in the playstore and is only used for users to see the update count.
Users will see the update but won't see a change in version number.
In Google play , The required change is versionCode version name is used only to track what version is listed on play store , in other words it is for users

How to make your Android app auto update

I published my first app in Google Play today, woot! Once I saw my app listed in Google Play, I realized I needed to make a change and post an update.
I made my code changes and incremented versionCode and versionName in the manifest file. I then built my apk, signed with the same key as the original apk submitted to Google Play.
I uploaded a new apk, deactivated the original apk, then activated the new one and clicked Save.
I waited a couple of hours, looked in Google Play and could see that yes, the new value I put in versionName had updated.
On my Android Phone, I had originally installed the first version, but when I go to Google Play on that phone, I see the new version of my app, but the only options are "Open" and "Uninstall".
What do I need to do to my app in the Dev Console, or wherever, so the Update option appears when me or any other user goes to my app in Google Play?
Doing some research in Android Developer, I read this:
android:versionCode
An internal version number. This number is used only to determine whether one version is more recent than another, with higher numbers indicating more recent versions. This is not the version number shown to users; that number is set by the versionName attribute.
The value must be set as an integer, such as "100". You can define it however you want, as long as each successive version has a higher number. For example, it could be a build number. Or you could translate a version number in "x.y" format to an integer by encoding the "x" and "y" separately in the lower and upper 16 bits. Or you could simply increase the number by one each time a new version is released.
http://developer.android.com/guide/topics/manifest/manifest-element.html
Then I found this:
Google Play can manage updates to preloaded applications, provided the following conditions are met:
Package Name with the same Version Code of pre-loaded app must to be uploaded to the Developer Console
http://support.google.com/googleplay/android-developer/bin/answer.py?hl=en&answer=113476&topic=2365760&ctx=topic
So I'm confused, do I increment the Version Code or not. I'm pretty sure I should increment it, but then again the Update option is not showing up.
Congratulations on your first app! It's a very exciting moment!
Yes, you increment your Version Code when you make an update to your app.
When you were testing your updated version, did you install the apk file onto your device? You might have updated it unknowingly. Google play will therefore detect that you have matching version codes with the app on your device and the app you uploaded and will not offer to update it.
You must always increment the version code when updating an app on Google Play. Your update will not be accepted unless you do.
As for your update not showing up, Google Play takes time to refresh it's servers. My updates have sometimes taken more than 24 hours to be pushed to the device, while new installers get the latest version withing 2 hours usually.

Categories

Resources