I'm developing an app that soon will be released on Google Play Store.
Meanwhile, some of our users will manually install the app on their device using ADB and a provided APK.
When the app will be on the store it will be an update (with different VersionCode) but it will still use the same package name and the same certificate used for the previous APK.
Will the already manually installed app receive this update? (I personally think not, because if I recall well the store has an history of installed app on a device, right?)
Otherwise, should we ask to our user to manually (re)install the app from the store? And in that case, will the Preferences be preserved?
When you publish app on Play Store you can choose to publish it in Beta or Alpha Test, so that only some users can view and install it from the store, so that when your app is ready to become visible to all of the users you can move it in Production.
To achieve this, you can create a Google Group, invite some users for Beta Test to this group, and then add in developer console the email of the group you created.
Related
Imagine, I have my app released in X Strore and Play Store. Then I release update in both of the stores. If user downloads my app from X Store before I release the update. Then, after I have updated, user goes to Play Store to update the app that has been downloaded from X Store.
Is this gonna work?
If yes, do I have to use the same signing keys for apk that I am going to distrubute to X Store and Play Store?
It will work if the apk is signed by the same key.
The first update may not be automatic, though.
An easy way to test this if you have an app already published to the play store is to manually install an older version of the apk to your phone with adb and then going to the play store to check for updates.
The phone should not have the app already installed for this test.
It will be impossible to do if the signing keys are different. This is a security feature of Android, not of the distribution channel.
We recently released an app on google play and after a couple of beta versions I moved it from beta to production. However, some people cannot download the app. Here is an example from Vietnam:
I don't know Vietnamese, but I asked a colleague to translate it and it says:
"Another account, {{email}}, has joined the beta program of this app. The updates for this app could include many beta versions."
Does anybody know how to solve this?
Google Play Store seems to store the application and user account association information in the device's local storage. Clearing the data of the Google Play Store from its app info page should do the trick. Now simply switch the the account that you have joined the beta program with and you should be able to install / update the restricted app version.
If it still doesn't work, repeat the process but this time reboot the device.
Another option is to install the app remotely through google play's website. First remove the app from the device, visit the site with the required google account and install the app in the device of your choice remotely.
This should not block updates, it should only be a warning. The English version of the message is "Another account on this device, XXXX, joined this app’s beta program. Updates to this app might include beta versions."
(Good translation by your colleague).
This is a device with more than one gmail account associated with Google Play. It is probably either shared by multiple people or the user has multiple gmail addresses.
An android device can only ever have one version of an APK (with the same package name) on it installed at once, even with multiple users.
The warning is saying that the current account looking for an update is not enrolled in the beta program for the app. However, another account on the device is enrolled in the beta program. This means if this user does an update, they might get a beta version of the app (as the upgrade as to be appropriate for the other user too). The warning is displayed so the user doesn't unexpectedly get a beta version.
However, it should only be a warning, it shouldn't stop the user updating.
There's a way to bypass this guys, should you want to install the application. On the app list when you search for the desired application, click on the "..." symbol at the upper right corner of the application, there is an "Install" option for you.
There is a button on left top corner, for google play store options. There, change the user to a the one they say that can use the program (different e-mail adress), and you will be able to download the required app.
I make an Android launcher app and I published this app in the store.
The problem is it seem the people don't receive the update of the app automatically...
They have to go to the store and click to the update button.
It's the same when Sync is enabled in settings & background Data is not restricted.
Maybe because it's a launcher and the Google Play Store doesn't update the app who are being used (to not reload it) ?
Google Play can take upto 24 hours to push application updates across all its servers.
Just wait for a while, and all your eligible users should receive the update. However, if your update adds feature requests that some devices don't support, they will not get the update. And one more thing you must make sure that the app u have installed in ur mobile is not apk built with debug keystore.. the play store will show always as "Open" button instead of "Update" if the play store app certificate doesn't match with installed app certificate. I realized this when i did trial and error with debug and signed apk's. Only signed apk worked. And use versionCode for comparing versions instead of version Name.
I have configured the open beta tests in the Google Play Store using a link like https://play.google.com/apps/testing/<my app package name> to invite my users to join the beta.
The users can download the app but when a new update is available the users didn't receive the update. Why ?
The only way for the users to download the update is going in the Play Store page of my app and click on the update button.
It seem beta apps doesn't have the same update system than published app.
I have an unpublished app on Google Play which I want to update for my existing users, but not let new users download it.
The Google Play documentation seems to be saying that this can be done by simply uploading an updated apk (and not re-publishing the app):
Unpublished Apps
Existing app users will still be able to receive app updates, even if you unpublish your app. If you don't want new users to find and download your app but still want to provide updates to your existing users, set your app to Unpublished in the Developer Console.
https://support.google.com/googleplay/android-developer/answer/113476?hl=en
But it seems unintuitive that an "unpublished" application would work that way. If the documentation is correct, how does Google Play tell the difference between an 'existing' user and a 'new' user?
Just a follow up: pushing an update to the unpublished app does make the update available to existing users only, but the app does not update automatically for these users. They must browse to the app page, where the app will have an "Update" button which can be triggered manually.
(This is just speculation, I'm not affiliated with Google in any way or anything)
The existing user probably has the app associated with the Google account they use to log in to the Play store.
If you look at your own profile in the store, there's a list of all the apps you've ever installed. I'm guessing the update would be available only for people who have your app in their lists, and the app will still be invisible for new users.
Whenever a user that has the app installed wants to update it, he requests an update of the app, it's different from re-installing the app as data from the app (a save from a game, or some saved preferences etc) are kept untouched, google play can easily detect that since it can detect what apps you have installed.