The Android developer console has 3 tabs for publishing the app's apk file: alpha, beta and production, as shown here:
as I recall from one of Google IO lectures, one cool way to check how good is your app before making a 100% scale publishing, is to allow only a percentage of the users to download the app first. I think it's called "staged rollouts" , because you can rollout the publishing in case it had too many problems to be published to all.
What is exactly the difference between them, especially between Alpha and Beta?
Only the production stage is available for people on the play store, right?
which one/s allow to publish only to specific people/percentage , and in which way do you do it?
which stage allows in-app billing, at least for testing ? I don't get why can't i test it out even before uploading the app.
in the percentage method, if I publish a new app version using the same way, will it first update for the people who were lucky enough to install the previous version?
See there are Four types of releases on play console for android developers;
1. Internal testing - It means you wanna share your app among the decided members. It means you have to put their Gmail into the testers list. This is usually for employees.
2. Alpha testing - Same as internal testing, but this time you can send your app to your friends, families, or on your smartphones.
3. Beta testing - This is a serious matter, this is public testing. But people cannot give reviews to your app. You can also limit how many users can install the app.
4. Production - This is the last release, now everybody can install your app, can give reviews, can report to google play if something bad is there. One more thing, now your app appears in play store search listing.
Now there is one more thing, open testing, closed testing, pausing tracks and stage rollouts, don't get confused by these terms.
1. Open testing - It means that you don't need to invite them, like no need to take their Gmail and add it to the user list. (Beta testing)
2. Closed testing - It means that you need to specifically add the user's Gmail into the list. (Alpha testing)
3. Staged rollout - This means we can provide the update to some percentage of users we currently have. Suppose 100 users are there and you rollout for 40% then only 40 users can update the app and after you confirm the app is working perfectly (using crash reports or reviews) then make it available for everyone.
4. Pause Track - See each testing has a track in play console. So if you click the pause track in beta testing then it will pause beta testing [changes occurs in few hours]. Same in internal and alpha. We usually pause test tracks when we release the app in production [usually I do].
Your app will not appear in search results until it is in production.