3
votes

We are planning a major upgrade to our App. So the new web services will not support old APK and old web services will not support new APK.

In addition, we want to new APK available to public at the same time as we publish web services.

Can I first submit the production APK for review and keep it ready? So that I can publish both APK and web services at the same time?

5
"So the new web services will not support old APK and old web services will not support new APK" -- not everybody is in position to upgrade their APK, just because you want them to upgrade their APK. - CommonsWare

5 Answers

6
votes

Can i first submit the prodction APK for review and keep it ready ? So that i can publish both APK and web services at the same time ?

Yes but I wouldn't do that... You'll always have users that don't update their app, or users not connected when you update. Those will don't understand why your app is not working anymore.

Personally, I would use a different address for your new webservice (v2.yourservice.com ?) for a transition period. Look at requests to your old webservice, when those are really low, redirect that address to your new webservice.

That will ensure a minimal pain for your users to switch.

2
votes

Yes. You should publish your new APK (e.g. v1.0.9) on Play Store immediately after you publish your new web services.

Before doing it, I hope you have done following things:

I assume here currently live version of APK is v1.0.7

Create another version of APK (e.g. v1.0.8) which will check if new web services are published or not. If the new web services are published then prompt user to download the updated version of this app. Tell user in a message about the reason for this update. Also, tell that app won't work if you don't update.

Upload this APK v1.0.8 on Play Store. Wait for few days to roll out this APK to maximum users. Till then you will have to work on development of new APK and new web services.

Once the new APK v1.0.9 and new web services are ready for production, publish both of them at the same time.

We have done this with one of our apps and it worked perfectly well.

This can be better solution for you. I hope it helps.

1
votes

Google Play has released scheduled deploy. You can now control the time of the update.

https://support.google.com/googleplay/android-developer/answer/6334282?hl=en

1
votes

If you are talking about PlayStore the answer is Yes. Take a look at delayed publishing mode. Also you can just publish it as closed beta, wait for it to pass validation and then in any time move it to release

1
votes

It is a very risky approach that you are taking.

Never turn OFF switch immedately, there are n things that can go wrong and in production they go wrong always. How you will roll back if new web service has major issues and you need to revert back go old one immediately.

Best solution is provided by Amrut Bidri above, I would go with that approach + roll out per user login rather than blanket server migration which is much safer approach.