Manually updating installed signed APK - android

I have an app on google play store right now.I just move my previous java code to kotlin since It is much easier for me. The package are all the same. Problem is on my android studio, when I try to execute the release variant I keep having this install_failed_update_incompatible error. On my searching, I have to remove the old app. Now I am a bit worried. I don't my user base to uninstall the app let alone erase all their data. Is there a way I could update the app without uninstalling it? Sort of like when you update an app from google play store? The data and information are retained except that the old apk is remove?
Everything is the same with my previous java project except that now I am using kotlin. package and even the apk signed key are all the same.
PS on emulator(genymotion) the updating works and even retained the previous information data. but on real device it won't

Turns out the apk file release from google play store is a bit different. I don't the difference. I have my old java project executed on release variant on my device and then execute the kotlin version release variant. The update went okay. However when I downloaded my app on google play store and then updated it with my new kotlin version release variant, it failed. Im not sure why but it seems that apk submitted to google play store is being modified.

Related

Recompiled APK doesn't get Update from Google Play

I de-compiled APK using APKtool and did not change anything latterly nothing has been change and then I recompiled the APK and install it and everything working fine. However when I try to update the app from Google Play the new app refuse to update and give an error about package conflicted. I check the package name and it's the same as I said nothing has been changed.
If I install the original version without de-compiling it gets update fine with no error. so my guess is the new version check if the APK has been altered with and if it does then refuse to update.
Any fix for this and where exactly I should be looking to change
I think that is the point of signing, security, that a banking app for example could not be updated and replaced with the same code installed from someone else that could read passwords/tokens from the app's storage.

Why does release android apk are rolls back to play store version after certain time

Noticed this very strange behavior with my android application
Installed app from play store with version name 3.1 App is working
fine.
Due to new correction,I've installed App via USB connection or by
sharing apk files with same version name.
App is working fine with newly added features but
After certain time/days i found that the newly added feature is
gone and I'm using the play store version...
Additional info:
The same issue occurred in android version 11,12,9 followed by the above process.
However, I have no idea why would it is happening and how to prevent this behavior.
visited this below link for the similar issue and found nothing related to my issue.
Why does Android app rolls back to a previous version after device shutdown?
My guessing is your play store has a function that called update automatically which is opend,your apk on Phone is version behind the play store version
Found the solution for this Silly Issue.
from last one month i observed that my release apk which is not in production but has the same version name was auto updated to production version i it is for all the apk user.
I tried to disable the of google play store setting of auto update and after few day is not replaced by the production version.
:)

Installation failed with message INSTALL_FAILED_UPDATE_INCOMPATIBLE: Package signatures do not match the previously installed version

I want to run my application in phone but I get following message:
Installation failed with message:
INSTALL_FAILED_UPDATE_INCOMPATIBLE: Package signatures do not match
the previously installed version; ignoring!.
It is possible that this issue is resolved by uninstalling an existing version of the apk if it is present, and then re-installing.
WARNING: Uninstalling will remove the application data!
Do you want to uninstall the existing application?
In my phone I have installed previous version of app from google play. I know that uninstalling old version of app from my phone can fix the problem but I don't want to do this because then I might lose all app specific data.
What I tried:
generating signed version of app using the same keystore.jks like previously
changing versionCode and versionName in build.grandle file and then generating new version of app
And still I have the same problem. What should I do to update my app without losing data?
There are two possibilities I can think of
You use Google Play App Signing. If you use Google Play App Signing then the signature in apps coming from Google Play will always be different to the app coming from your IDE. The only way you can get the update to work is to update the app from Google Play. The best way to do this during development is to use an "Internal test track". Google launched these at Google I/O this year and they let you update your app in seconds from Google Play. So when you have an update, don't install from your IDE, upload to Google Play internal test track, republish, and then update from Google Play. It is really quick.
You don't use Google Play App Signing, but you are trying to install your debug build instead of your release/production build. Make sure you are building the production release APK, so it is signed with the same key as the one uploaded to Google Play.
If I'm understanding correctly you want to re install the "same" apk in your phone but with some changes in the code (updates) but Android Studio can't install the new apk.
I can only think in one thing, this is the explanation:
Please remember that android has different "Build Variants" there could be many but you will always have "debug" and "production" build variants, as I can read, you have installed the one in Play Store this means that you have a "production" build variant already installed in your phone, so you need a new "production" variant version of your app with the same build data (code and name version) and the updates in the code.
Build a signed apk with the same data as the previous version (code and name version) (Just like the one you used to upload to Play Store).
Find the signed apk.
Use adb to check your connected devices, expect a list
adb devices
Use adb to install this new apk.
adb -s <device_identifier> install <apk_name_include_apk>
Following those steps should let you install what you need.
Go in your React Native > Android >app
in the app folder,
you can see a build just delete this folder and Clear React Native project by npm cache clean cmd/Terminal Command.
Now try to run I hope it will Run for some of you.
It's working for me.

"App not installed" message when installed apk

So I have an app on the Play Store that I released about a week ago. I've done a ton of work to to it since and I'm basically going to rebrand it a bit.
When I first released the app, I put it up on the app store with the name "First Name of App" (obviously not the correct name). I now have an update ready to publish with a lot of changes, and one change is that the app name is now "Second Name of App". It's all under the same package yet, I just changed the name using the Manifest.
I'm having an issue though with testing. Currently on my own phone, I have the version of the app that is currently on the Play Store installed.
I generated a signed APK using Android Studio (all with the same settings and key passwords and such). I then put that signed apk on my phone for testing, and when I try to install it I get the "App not installed" message.
Things I have tried:
Uninstalling the previous APK and then installing the newer version. If I uninstall the Play Store version first, and then install the newer signed APK version, it installs fine. The problem with this though is that I lose the data that I had in the Play Store version. I can't have that.
Changing the "versionCode" and "versionName" numbers in the build.gradle. I made sure both numbers are higher than what the Play Store version is, but I still get the same "App not installed" message.
Making sure the settings while generating the signed APK are the same. All of the settings are exactly the same. The signature version checkboxes are both checked yet also, as they were with all previous versions.
Anyone have any ideas what could be going on? I really would like to release this update but I'm afraid if I just upload this signed apk to the store that everyone would have the same issue, and that they'd be forced to uninstall the current version they have (resulting in data loss).
The problem seems that you are trying to install an APK with the same package name but different key and that creates a conflict. Android only considers an App to be the same if both package name and key signature are identical.
Keys are unique, even if you use the same settings and passwords each time you create a key a new unique key is created and it will be always different to the key you used in the Play Store release.
The only way to install the APK is to uninstall the Play Store version.
And that serves to emphasize how important it is to keep the key used in the Play Store, if you lose it you will not be able to upload new updates.
UPDATE
If your have "Google Play App Signing " activated for you app, the key used when an user installs the app from Play Store is different than the one you used to upload the release to the Play Console.
https://support.google.com/googleplay/android-developer/answer/7384423?hl=en
Have you by chance changed the minimum SDK version or anything like that? I've had a similar issue. I've an app on the PlayStore which I tried upgrading with an APK with the same signature as that of the PlayStore version but a different minimum SDK version. When I tried installing I get the 'app not installed' error. I then uploaded this APK on the PlayStore. On my device, the app on the PlayStore now shows two options 'Uninstall' and 'Open'. Due to your conflict, users will have to first uninstall the app and install it again. There will be no 'Update' option due to the conflict. Hope this helps :)
Similar Issue
Android Phone: Google Pixel3, Android 9
install youtube apk, but error:
Application Not Installed = App Not Installed
Final Solution
use adb's pm to install apk
even same error, but can show/known the fail reason
then can find specific solution to fix it
Examples
here later encounter many error cases:
blueline:/storage/emulated/0/Download # pm install /data/local/tmp/com.google.android.youtube_16.29.36.apk
pm install /data/local/tmp/com.google.android.youtube_16.29.36.apk
Failure [INSTALL_FAILED_VERSION_DOWNGRADE]
or:
blueline:/data/local/tmp # pm install youtube_16.29.36_addedDebuggable.apk
pm install youtube_16.29.36_addedDebuggable.apk
Failure [INSTALL_PARSE_FAILED_NO_CERTIFICATES: Failed to collect certificates from /data/app/vmdl445467286.tmp/base.apk: Attempt to get length of null array]
then google it and find specific solution to fix it, install apk successfully.

Replace current application with rebuilt version from new Android Studio Project

Information:
Currently, I have an application on the market that is actively used. Rather than refactor all my code to rebuild the application, I rebuilt the whole application from scratch in a new Android Studio Project with identical/updated information (applicationId/packageId/versions). I want to upload this apk to the google play store to have it update users normally.
Problem:
Testing this situation on my devices hasn't worked. I have a device with the 'old' application on it and I attempt to install the 'new' version and I receive this error during installation: "The package seems to be corrupt"
Question:
Is this process even possible? If so, why might I be getting this error? If not, what is the method by which I could do this?
Thanks!
It is possible as you say, however you need to keep three things in mind:
Package name must be the same
Signing key must be the same
Version number must be higher than last version
Other than that, there should be no problems
You are not going to be able to push the update to the play store with your new project, because the file that you sign the application with (signing key), is associated with your project old SHA 1 and without that file, you cannot push an update.
I suggest you create a new copy of your old project and work there

Categories

Resources