This is a repeated question as i have not got answer . Hope someone will look at this and answer .
I have an android application which has number of downloads . I want to update the app with some major fixes and updates . Because of this update, end user may get failed authentication and need to reenter his credentials which I dont like. At the same time i want keep same package name to keep downloads and app reputation on playstore.
So how can i achive these
1.update android app on playstore which will not push automatic updates even if end user turn-on autoupdate in settings .
Previous app downloads and userfeedback should be there
So this way old users still continue using old version and any new users who download app from playstore will enjoy new app .
Thank you
Ok, you mentioned keeping a package name and stuff... Changing that should never be an option. The user could have ten of the same app, all with different features because your updates are all packaged separately. There isn't really a way to stop Google Play from auto updating apps, the users may just have to deal with reentering credentials. Since there isn't a way around this, you could simply apologize to the user. Example:
When the user logs in, save a boolean called something like, "wasLoggedIn". Then, on your login/startup page check if that is true. If it is, display a dialog such as, "Sorry for the inconvenience, you have been logged out due to an error." This will make the user a little more comfortable logging in again.
Related
I have developed an android "Group Chat" app. Me and 20 of my friends are using this app to group chat with each other. When I look at the firebase database, I obviously see 21 users (including myself). However, I can't know whether all of them actually have the app installed on their phones, or some of them have uninstalled it. Is there any way I can differentiate among my uses? Generally speaking, can I "flag" my users as, say, active, inactive, and the like?
What is if you add a timestamp every time a use log in. With this timestamp you can see how long the user not log in and so if he is in active for a long time or not. It's not say if the user have delete the app. It's only a prognosis.
If i understand correctly your question, it can be split in two parts.
First part is whether you want to know if your users are online or offline this could be achieved by an online presence system as described here
The second part is whether or not users have installed or uninstalled your app.
In my opinion easiest way to do this is by using the Firebase Analytics SDK. This way you can check the app_remove stats and whenever a user uninstalls an app, it gets updated in the console under events section.
This will give you how many devices uninstalled the app and some info on country, gender and age of the user but you could couple this with a "last login" timestamp to pinpoint the exact user.
More details along with how to include analytics SDK to your app can be found here
Or you can use the .info/connected to have this functionality in your client code. You can read more info about this here and the sample presence app at the bottom of the page will help you get a grip on how to do it.
One possible solution is to add a flag in the database as the child of the user. This flag will have an initial value of active.
And instead of uninstalling the app directly, you can have a delete account functionality in the app, and whenever someone wants to delete his/her account, it simply updates the flag to inactive in firebase database.
Now you will know actually who is active / inactive.
I 'm starting to build an Android app that can self-restructuring. It means this app can change its behavior after an "update". But it's not similar to common update because I don't want to publish to market and some reasons below. The idea is the app check version through server, if it's old, then download a file to proceed update.
This is not an overwritten installation, only some parts of the app is changed, not all.
The app have to keep working during updating.
The download and update process must be silent, there must be no notification, pop-up or asking permission (option)
Please tell me if it 's possible and give me advice, approach, keywords, ideas or somethings helpful. Do I have to intervene system, OS or anything?. I tend to make the phone as a sensor device
There is no direct way of achieving this.
You need to download whole new apk. You can't just download few part of it.
but what you can do is download app in background without user interaction.
Now to install this user has to allow installation as per security standards.
PS: If you just want to perform different action. You can download stuff n place in external/internal storage and through api call changes perform desire actions.
There are apps that doesn't use play store for updation eg. Dream11, famous cricket app.
fantasycricket.dream11.com/android-desktop.html?utm_Source
Introduction
I've deployed the first version of my app to the Play Store and now I'm going to change the version code and publish the next version. So, in general case, the Google Play will notify users about the update. But I want my app itself to check for the updates and take user to the Play Store.
Studies till now
I have read about the workaround , here , where the app checks for the latest version with your server but I don't want that.
Requirement
I just want my app itself to directly compare its version with version available on the Play Store, and if it is different, then prompt user to update the app. On confirmation, it will take the user to the Play Store.
Is there any way to achieve this?
Is there any way to achieve this?
Probably, but I would not try to implement this if I were you and here is why.
Users configure update settings themselves through google play app settings.
If they want app updates right way they can say so. If they want to confirm first they can say so. If they don't want to be notified of updates at all, they can say so.
In most cases users are already notified of an update of your app through google play notifications. There is no need to add a 2nd notification. Even worse - users that don't want to be notified of updates will be annoyed when you notify them yourself. You want to avoid that.
You will need a service call to
https://androidquery.appspot.com/api/market?app=YourPackageNameOnPlaystore
for example:
https://androidquery.appspot.com/api/market?app=com.google.android.youtube
the respnse which will be returned by playstore will contain version information which is present on playstore.
compare it with local app version and take further steps
Hope this helps!
Good luck!
Short answer: No. There is no such official API yet. But you can go for an unofficial one.
But still as you have mentioned you can go for your own API implementation and prompt the user to update the app. But take into consideration that users have their own preferences about updating the app and they may find such prompts annoying. #Tim Castelijns's answer explains it in detail.
I recently published an app to the Amazon App Store. After I found some unexpected bugs I made the fixes then uploaded a newer version.
I was more than a little surprised to find that the Amazon app store app doesn't actually notify the user that there's an update available. As far as I can tell the only way for the user to ever find out about updates is to open the app, open the drawer, choose 'my apps' then hit the refresh icon. No one will ever bloody do that. Ever.
The only solution I could think of was to store the current version code on the server then add code to the app that would compare the version on the server to the version code on the manifest. If the version on the server was higher (which I set manually after a new update goes live on the store) the app would prompt the user to update by means of a dialog. Dismissing the dialog brings the user to that apps page in the amazon app store app.
So that works great and all but guess what happens when the user is redirected to the Amazon app's page for my app? It says 'open' not 'update'. If you hit the button it just brings you back to the app which just shows the dialog again. There isn't even a refresh icon on that page.
Once again, the ONLY way for users to find out the update, even after being brought directly to the app's app store page is to open the bloody drawer, choose 'my apps' then hit the refresh button.
I must be missing something here. Why the hell would Amazon make a system that's so damn unfriendly for the developer? Is there a setting somewhere on the developer console that I'm unaware of?
This is what I'm using to open the Amazon app:
Intent goToAppstore = new Intent(Intent.ACTION_VIEW,Uri.parse("amzn://apps/android?p=" + getPackageName()));
goToAppstore.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
getActivity().startActivity(goToAppstore);
As a user, I can confirm that the Amazon App Store does not show updates when available. It used to, but this was somehow broken in some version of the app store apk. I do get some kind of warning about enabling sync, but there's no such setting on my android phone.
The only way I can update an app is to delete it from my phone and re-install from the app store, and I have to KNOW there's an update to install.
There are a few developers who have not posted updates on Amazon, and I get the impression it is not easy for them to do so.
On Android I think that you can 'unpublish' an application so that no new users can download the application but that the user who already have the application will recieve new versions that are uploaded to google play (or so it seems to say here: https://support.google.com/googleplay/android-developer/answer/113476?hl=en&ref_topic=3450986 )
However I can't find any information on iOS. Can I remove the app but still update existing customers with a new version?
Just for context the update I want to issue for both OS is basically an app which displays a 'app is now closed' message.
Any help would be gratefully received.
Can I remove the app but still update existing customers with a new version?
As far as I am concerned, you can't do this in the App Store.
No, this isn't possible. Once you remove the app, nobody will see it in the app store. Existing users of the app won't see any updates that you may have published before removing it that they never installed. It's just gone if you remove it from the app store.
You could publish an app update that includes some kind of notification system within the app, and keep that in the store long enough for most users to upgrade. Then after you pull the app from the store, you could update this message (presumably it would retrieve this message from your server) to state that the app is no longer available, and maybe direct them to whatever you have that you're replacing it with (assuming you're replacing it). Otherwise, I don't see why you necessarily need to inform existing users that you've removed the app. If there are server-side components that it accesses, and you're shutting those down, I guess the app will simply cease to function for existing users.
I also don't think there is a way to offer updates without new customers being able to buy the app.
Why not increase the price of the app to the highest price allowed in the app store, so that no one will buy it? That way you can offer an update for your existing customers, but effectively stop new sales. If the new price is $1999.00 US, I doubt if you will get any takers...