I have already installed my signed apk app on my device. Now I am giving an update to my app. when I install update from android studio, It asks to uninstall previous app (Obviously because sign identity). I want to import some data from previous app package. So is there anyway to run my current app and debug it over the previous app as an update.
I have searched for this and could not get any similar question. Thanks in Advance.
AFAIK this is not possible, You have to sign the new version using the same debug key
Related
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.
I have an old app that I've written for personal use only, and never made as release to the Play Store. I installed it to my phone via Android Studio using run app command.
Many years later I want to modify the app, I try to pick up the app and run it again, this time using a different computer. I get the error saying:
"Installation failed since the device already has an application with the same package but a different signature. In order to proceed, you have to uninstall the existing application."
I definitely don't want to uninstall my app, this would cause me lost all the data I've entered to it. So I want to ask that isn't the debug keystore used by Android Studio to install app on device would create app of the same signature? Why it would be different? Is a different machine caused this issue? Thank you very much!
It sounds like you were using your debug certificate when you originally installed the app. This is unique to each machine when you install Android Studio.
You can copy the debug certificate from your old machine to your new one.
The file is located in your [userhome]\.android\debug.keystore
I have created an app through Eclipse and have uploaded it in the app store. I have the app installed in my phone.
Now I am working on an update. I am having trouble installing the app because it tells me the signature is different.
I know that this is due to using different keystores to sign each. But I dont want to uninstall the app 'cause I want to make sure that the app is able to go to the normal app update process.
Is there a way to go around this?
There are a few possible solutions to this for you:
Change the package name to some thing different like com.example.myapp.debug and remove that from the package name before publishing (this would have to be in the manifest)
Yes you could uninstall the app, do debug work, then uninstall the debug and reinstall from app store, push the update and wait for Google Play to register that version.
Do as Kai said, sign the new version and install it as an update, but then you won't get the updates as triggered by Google Play unless you uninstall and reinstall
Sign your new version, then you can install it as an update as opposed to uninstalling the Google Play version. This is probably the only way.
I have my application in Google Play, I've downloaded and installed it on my phone.
I'm also currently working on update of this application, and whenever I want to install my .apk file on my phone it shows me, that I can't do it, because the app is already here.
Where in Eclipse can I set some settings, which will allow me to install my updated app without installing original one?
EDIT
I want to have two versions on my device at the same time.
One simple solution is to change the package name, since that's how the OS identifies the .apk. Indeed, the package is unique to the Market: how does an android phone(or market) recognize an app
You can not install and run the app from eclipse because the app installed on the device (the one from play store) is signed with a different key.
When you export your app you sign the apk with a specific key and when u run it from eclipse you sign it with a different key - the debugkey.
If you HAVE to install another version on the device without uninstalling the old one from the device (the one you got from the play store) you should:
1.export your app and sign it with the same key you signed the app you uploaded to the play store.
2.upload the exported apk to the device.
3.install it.
EDIT:
If you want to versions on the same device you should change the app package name.
I'm trying to test my application on my phone. I have successfully done it before but for some reason it seems to not be updating with the latest version. I uninstall my app from my phone, I build my application in Titanium for Android. I go to install now and it appears to install it on the device. I open the application and it is in the same state I left it in and has not appeared to have been updated. Driving me nuts!!!!!!
It sounds like your app's identity has changed, so when adb goes to install the app, the phone rejects your new version. This could happen if you installed a signed version of the app, and then went back in to development of it.
Try uninstalling the app from your phone, and then deploying it again. With a fresh slate, you should be able to get it working again!
Hope this helps; let me know if it doesn't and we can explore some other solutions! -Dawson