Google play has removed my app from production. I have made some changes and want to upload a new version to Internal testing.
In the Publishing overview section I can see both versions. The old version in the production and the new fixed version in internal testing.
I want to Send for review my new version, but I don't want to send my old version.
How to remove the old version from the Publishing overview? Can I specify to review only the new version?
You can promote your internal testing version to production with 1% users rollout. In that way, most users won't face the new version, and you will be able to override the old version review.
Steps:
go to Google Play console
select Internal testing from left menu
select Promote release dropdown menu
click on production
write "1" in rollout and release
I have contacted Google development support:
Unfortunately, we cannot deactivate the non-compliant version on your behalf. You will need to release a new compliant APK on the production track in order to deactivate the non-compliant APK. We apologize for the inconvenience this has caused.
Related
I am using Google play store Managed publishing feature. I have multiple app versions as below in the "Changes ready to publish" state in the Google Play console. I would like to only publish v6.6.1 as staged rollout, but I wonder if v6.6.0 will also be published when I publish the releases. I dont want v6.6.0 to be pubished, would prefer if it could be deleted but there was no way to remove an approved release.
Any assistance is much appreciated.
Option 1:
I think this could be done by going to Google Play Console and select App bundle explorer from the left menu.
then chose the App version 6.6.0 click on Upload new version
you should upload a version that is identical to the version previous to 6.6.0 but with same 6.6.0's version code & same version name (6.6.0).
Note: I've never tried this before, but I noticed it in the new Google Play Console.
Option 2:
upload a new version that is identical to the version previous to 6.6.0 but with new version code (highest version code, higher than 6.6.1 version code) and version name 6.5.9 (for example)
submit it as full roll-out
upload a new version that is identical to the version previous to 6.6.1 but with new version code (highest version code, higher than 6.5.9 version code) and version name 6.6.1 with Staged roll-out = 1%
I have checked:
will open testing on Google Play overwrite the existing production app?
New Google play console - managed publishing for first app release
but they don't seem to answer my question.
I have enabled "Managed Publishing" and an existing Production release (build 6416) that's already reviewed by Google Play, and only needs to be published manually (because I had managed publishing turned on)
I created a Closed testing release (build 6425) and is currently undergoing review.
See screenshot.
Questions:
If I promote build 6425 from Closed testing track to Production track:
will it invalidate or remove build 6416 and reset back to the reviewing stage? And it means, I can no longer publish 6416 without waiting until 6425 is reviewed completely?
Or can I still publish build 6416 without waiting for 6425? And 6416 will only be replaced by 6425 after the review process of 6425 is finished?
I'm raising this because my team would like to have the option to release 6416 immediately without waiting for 6425 fixes ONLY if there's a need (and still within the deadline). But ideally, we'd like to release 6425 but we are hesitant because of the uncertainty of the review duration.
Thanks
UPDATE/SELF-ANSWER:
So in the end I tried this in a dummy app then in our final project, and was able to confirm that:
No, creating another release will not delete/invalidate an already reviewed-but-not-yet-published release.
Yes, after 6425 is reviewed, it will just override the not-yet-published 6416 release.
See screenshot of ongoing review and an already reviewed release but not yet published.
Well we released an update for our app last month, that set the minSDK to 5.0. We did this because we had a server side change that would break those on below 5.0.
Is there anyway to release another app on Google Play that would only be for user on below 5.0?
If we were to release the 5.0 and below version for a few days and then release the 5.0 and above. Will the 5.0 and below user still see that "slightly newer" below 5.0 release?
Yes. This is known as "multi-APK". See this help page.
You have two options for making sure users get the right APK.
the simplest to understand option is to set maxSdkVersion in the manifest of your pre-5.0 APK, and minSdkVersion in your manifest for the post 5.0 APK.
another option to use version code. Google Play will always deliver the highest version code that is compatible with a user. So if you make sure your pre-5.0 APK always has a lower version code than your post-5.0 APK, then both types of users will get the correct APK.
I can't upload a new version of an APK to Google Play because it would supersede an existing version.
So, how do I retire an existing APK so I can upload a new one?
This is the error message that I get...
So, I have to remove version four. But how? The only option I can see to do this is to manually upload the APK to the console at the same time as deactivating the old. In which case, what's the point of the app publisher?
In the Play console you create a release as described here.
In it there are 3 options:
APKs to add
APKs to deactivate
APKs to release
By default your old APK is in the "APKs to deactivate", which is what you refer to as "retire". If it is giving you this warning it is probably that you have decided to retain it.
The purpose of this is to allow a more complicated "Multi-APK" configuration, where you have different APKs supporting different users, eg one for older phones and one for newer phones. If you don't need it, just put your old APK to be de-activated.
In particular (from the docs here)
In the "Apps to retain" section,
view details about app bundles or APKs from your previous release that will continue to be served to users.
Clicking Deactivate moves an artifact to the list of app bundles or APKs that will no longer be served to users.
In the "apps to deactivate" section,
In this section, view details about app bundles or APKs from your previous release that will no longer be served to users.
Clicking Retain moves an artifact to the list of app bundles or APKs that will continue to be served to users.
It sounds like you need to click Deactivate by one of the apps in your retain section.
When creating an Xcode Bot in Xcode 6, it is linked to the current active branch in Xcode source control. There seems to be no supported way to change branches after creating the bot.
Xcode Service: Select Git Branch
I have set my bot to run "on commit". I find when I commit to that branch the bot immediately integrates the project. But when I commit to a different branch, the bot takes no action.
Ideally I would like a single Xcode Bot to look at all branches of the remote repository. When there is a new commit to any branch the bot and its tests should be run.
I do not want to create a new bot for each branch. Is there a solution?
Bug Report:
rdar://20154198
Developer Forum:
https://devforums.apple.com/thread/263490
There is also https://github.com/modcloth-labs/XBotBuilder developed by the same creators of the tool #jeremy-fox. It will create a bot per Pull Request, and re-run the bot for every addition in the PR.
It seems to be in early stages and without documentation but the code seems to be well organized so wouldn't be hard to get it to work or change it's behavior to do what you want.
For the moment we use a tool called Buildasaur (https://github.com/czechboy0/Buildasaur) to improve our CI-workflow. It's written in swift and helps to build/run/ delete bots automatically for one github repository, for example whenever a pullrequest was created or newer commits were pushed to the pullrequest. Actually it works fine on our Xcode Server 6.3. Unfortunately it works for just one repository at the same time. :-(
We also hope, that Apple will implement such features soon.
Apple response from the dev forum:
This isn't something Xcode Server supports. You might be able to craft a pre-integration trigger to switch branches in the working copy and invoke seperate xcodebuild invocations, but the results reported in the UI will only be for the Xcode Server builds (the build that XCS runs after your trigger executes).
https://devforums.apple.com/thread/263490
rdar://20154198
This is not currently possible with Xcode Bots (current versions are Xcode Server 4.0.3 & Xcode 6.2). A Bot will only track the specific branch form which it was created.
This was possible in the past on Xcode Server 3 and Xcode 5 using https://github.com/modcloth-labs/github-xcode-bot-builder but this project hasn't been updated to work with the latest version of Xcode Server and Xcode.
I'm also really hoping Apple introduces this feature soon, it would be great to be able to have a single bot monitoring a repo for new Pull Requests and when found run an integration against that PR. For now though, it's just not possible.
Update 3/19/2015:
As #Gus reports in another answer, there is a new Mac OS X based project that can help with ad hoc bot creation for feature branches/PR's called XBotBuilder - https://github.com/modcloth-labs/XBotBuilder. It should be worth noting that currently, this project only works with one github repo. So, if you have more than one repo you'd like to monitor for PR's, this is still not currently possible unless you have multiple machines each running a different instance of XBotBuilder and targeting a different repo.