Automatically send private applications to clients - android

We have the same application for several clients. This application, for security reasons, cannot be published to Google Play, so we distribute it manually to customers.
The problem is that every time there is a new version of the application we have to contact all customers and update all their applications.
Isn't there a way to have private applications on google play and give access to different clients so that they can download the updates for those applications?
I've seen this, but I'm not sure if it behaves like I expect: https://support.google.com/googleplay/android-developer/answer/3131213?hl=en#runtest

Of course you can, there is an internal test app version available in the Play Store where you can upload your app version. Once uploaded you will have a private link available and only the people with access to that link will be able to download the app.

I guess you can publish as a "beta" version of the application https://support.google.com/googleplay/answer/7003180. You can define your clients as beta-testers and app would be visible on market only for them.

I have an approach, Assume you have an .apk file in your website. every customer will download it from here. Now you have to make an API call whenever user will use your application to make sure that they are using the latest version of application by sending the version details to server. If the user is using an older version (This you will get from server/api response) block the screen and redirect them to server to download the new .apk.
You can store the response to a local/DB so they can not use your application in offline mode also.

Related

How to control who can install my app from play store?

I have an app that I want to be able to distribute to clients from other organisations. I don't want this app to be publicly visible on the play store, ideally the client would receive a link from me that would allow them to download the app from the play store.
I have had a bit of a search for this, so far I can only find 'Managed groups' (https://support.google.com/a/answer/2494992?hl=en) and 'closed tests' (https://support.google.com/googleplay/android-developer/answer/3131213?hl=en). A closed test looks to be along the lines of an ideal scenario, however the client would be aware that the app is in a testing phase, and may be able to do more with the app than intended for an end user. The managed groups also seem ideal, but they seem to be limited to my organisation, and when they talk about whitelisting that seems to be more whitelisting the apps on a user's device rather than whitelisting who can download the app.
Any help would be appreciated :)
To publish a private app within a client's organization (as a 3rd
party developer): If you’re an agency developer who wants to manage
the publishing flow on behalf of your client, or if you’ve built an
app for multiple organization clients and don't want the app to show
up in the public Play store, you can use your clients’ Organization
IDs to publish these apps directly to your client's organizations.
https://support.google.com/googleplay/android-developer/answer/6145139?hl=en

New version of android app

I have a native android app in google play and now I have made a new version of the app with ionic 2 framework.
How to update the app and is it possible to notify the users about the new version of the app?
I quess I have to remove the old one and upload the new one.
This is exactly what you need:
https://support.google.com/googleplay/android-developer/answer/7159011
Because you completely rewrote your app please read this too, the most important part is "Prepare your APK":
https://support.google.com/googleplay/android-developer/answer/113476?hl=en
If you follow these guides existing users will be notified about new version automatically by Google Play Store.
The existing users can download the update from your app listing page on the play store or when they select My apps on the Play store. Also if they have enabled auto update for your app then the update will be downloaded and installed automatically.
More about this here.
and as #Abhishek recommended, if you don't have any code for checking updates in your previous version of app then users will not get notified automatically.
also you don't have to remove the old app to upload the new one, you can deactivate the old app if you want it to no longer served to the user, OR you can retain it if you still want it to be served to the users.
Google play usually updates applications automatically. You just need to add upload APK and click Release. You don't have to remove old APK.
In less than a day or something all users of your application will be notified by Google Play that new version is available and if user configures his phone to install apps automatically, then apk will be installed in background as soon as update will be ready.
Also you can notify your users about new version using PUSH notifications. Of course if your previous release does not contain code to enable PUSHes, then you cannot send such notification.
And one more thing: if you use your previous keys to sign APK then everything is fine and you don't need to do anything with APK at developer console, otherwise you need to rollback application and/or re-publish it.

how to Google Play publish app in specific time

I want to publish my app game version 2.0 in google play. And there is already a version 1.0 here. My game is a online game, so i have a game server myself of version 1.0 the app connected to.
My question is. When a publish my app version 2.0, it cost about a day until it is available in google play. Can't I specified a time my app v2.0 available in google play so i can update my game server at the same time, because my client and server version must be same.
Any one has any solution?
One way is to serve the update yourself via your own server. If you have this setup on your existing app in the play store, awesome. Otherwise you have to have to push an update to the old app ASAP (through the play store) that is compatible with your current game server, that will contain this check on your apk server.
You will have to check the server version, and if it's been updated, fetch the updated app. Also add some code that checks if the apk server is providing a binary or redirecting you to another url. If it's the latter, you can have your app open a browser to open that link (as to why you want to do this, read on.)
Let it settle down a bit (2 days should be enough), then update both your game server and play store app at the same time.
Now you can modify the apk server so that it redirects everyone to the play store link of your app.
Users that were updated through the apk server may be prompted with a new version in the play store again, though the update doesn't really add anything (AFAIK there's no way to query if an update is available in the play store through the play store itself). Also I don't know how Play Store checks for an update -- if it's just the version code and version name from the manifest, they may not be served with the update anymore (which is good).
Users that were not updated through the apk server but were able to get the patch for the server checking mechanism will now run the app and find that they'll be redirected to the playstore, of which they will now download the update.
The only limitation with this solution is that users that were not able to get the server check mechanism patch may have to figure this out for themselves that they need to update via play store. You can help them by sending a notification email regarding the update.
There is no way to do this short of requesting it of Google themselves. A release/update isn't instantaneous worldwide either; the speed will differ by region. I assume this is as there are multiple data centres delivering the data.
If you have the resources, you could run both versions concurrently for 24-48 hrs while the update gets validated by Google and propagates.
Otherwise I think you will have to be offline to some users for a period. You should announce the downtime through whatever form of communication you have with your users in advance.
Yes, you can pick a specific time to publish your app now.
Answered here
For more info

AppStore / Market : migrate existing user base

In recent talk with client, we got an interesting question, if we are able to release new version of application to current users.
We can get certificates for Android Market / App Store, to release application with same signature, but previous supplier is a business enemy, so we want to migrate all users they currently have on the application to our version, via standard update mechanism.
Is this possible? To migrate application to another developer/publisher account and to release an update (which can be completely different, from previous version) so that iTunes/Market update will download and install the new version instead?
I'm looking for solution on both platforms Android Market and Apple App Store, even if it would be necessary to pay some fees and so.
I can only answer for the Android Market:
If you have the release-keys of your old application, you can develop a new application, sign the application with the old key and everybody will be able to upgrade. Of course it will be your job to read the old data, which is saved on the device and transform it to a format which your new app can read, but thats a implementation issue. You will also need access to the google account which was used to upload the application. Google can transfer the account ownership on request.
So: If you got the release-keys, its possible on Android. Otherwise, I'm quite sure that you wont find a solution, you can not upgrade applications if the old and the new version are signed with different keys.
(For android) I have not done this, but without Google's intervention, it would require access to the key that was used to sign the app and the android market account that was used to load the app. If you have those two things, it is possible. Without those, you will probably have to create a new app.

How to identify a user who bought the application?

I would like to in my application user can download content on http, but without having to log on.
how to check whether the request to the server came with the purchased android application?
PS. Sorry for terrible english.
It can be easily handled by Android LVL library. In brief it works in following way:
Once user purchase application LVL library can get through
Android Market application service response from Android market
server that application is licensed
Application itself can store in local file system hash of licensing server
response
So your application can use those hash to identify whether application is purchased or not yet.
If you are using single APK for free and paid , you must be using in app billing API .so use it for server authentication also .
else if it is only one APK on market then every installation would be purchased one i guess .
I would generate a some kind of key for the premium version (one key for all the premium version). For example:
You are allowed to download (premium):
http://www.myurl.com/download.php?parameter1=xxx&key=myPremiumVersionKey
You are not allowed to download because no key/wrong key is given (free version):
http://www.myurl.com/download.php?parameter1=xxx

Categories

Resources