artem
artem

Reputation: 16798

INSTALL_FAILED_UPDATE_INCOMPATIBLE when I try to install compiled .apk on device

I've compiled Trebuchet launcher from CyanogenMod 9, and trying to install it with adb:

$ adb install out/target/product/generic/system/app/Trebuchet.apk
3986 KB/s (7870141 bytes in 1.928s)
    pkg: /data/local/tmp/Trebuchet.apk
Failure [INSTALL_FAILED_UPDATE_INCOMPATIBLE]

I tried on Nexus S with CM9 and Galaxy Nexus with stock JB. Why I'm getting this error?

EDIT: In my case I've tried to reinstall system package with package manager. That's not supported, so I've got this error. Source of the error may differ in your case.

Upvotes: 332

Views: 279953

Answers (30)

Sunil KV
Sunil KV

Reputation: 763

This might be Raised When the Application installed in you device as Different Signature then the Application(apk) you are Trying to install.(in easy words, earlier application is build by "System-A " and now build a Application By "System-B" and trying to install) You can solve this Issues in one or the other ways as showed Below.

Option 1:

Uninstall the Application in your Device and install the New APK

Option 2:

Note: this option is applicable only if you have the Access to both old and new Systems via which Apk are build respecitively

if you don't want to Remove the APk or its not Allowed then you can get the Debug key, System-A and the same Debug to System-B

steps to take the Debug Key form "System-A"

Go to Terminal enter

./gradlew signingReport

you will get to know your results as Below

Variant: debug Config:
debug Store: /home/user/debug.keystore
Alias: AndroidDebugKey
MD5: CS:7B:E3:51:C5:2E:36:AA:3F:66:BA:ED:40:DB:86:25
SHA1: 2A:BB:C5:4E:64:4E:FE:12:4C:4E:2B:4E:4E:42:4E:4E:4E:4E:63:83
Valid until: Wednesday, May 6, 2048

get the "debug.keystore" file from the location showed above and transfer it to "System-B" then goto

    Android studio >> File >> Project Structure >> SigningConfigs
    set the location of the "debug.keystore" to Store File and then ok

Now build the Apk in your "System-B" and Run it will work

Upvotes: 4

einverne
einverne

Reputation: 6682

Try

adb uninstall package-name

It works for me. I have remove my app using Titanium Backup. However,I think Titanium backup didn't removed my app totally.

Upvotes: 219

SanthoshKumar
SanthoshKumar

Reputation: 39

It means that if you have already installed an apk but you are trying to debug it, you should uninstall it and restart your project.

Upvotes: 0

Nipun Ravisara
Nipun Ravisara

Reputation: 4471

In my case I'm getting this error but the app is not showing in the emulator. In that case try uninstalling apk useing adb command

adb uninstall <package-name>

Upvotes: 1

Federico Ba&#249;
Federico Ba&#249;

Reputation: 7725

WORK PROFILE / WORKSPACE

enter image description here

Don't forget that, depending on which user account you have on your phone (like a Google Workspace -G Suite Account profile with Device Management set to advanced) may generate a Workprofile to your phone.

90% of people have it but don't even know it. You normally see the Workprofile on the All app view. Is litterally like a separate workspace with separate Apps.

You can recognize when you are browsing app from Workprofile if they have a little lock of luggage. Anyway :

You must delete the App from the Workprofile As well!!!

Upvotes: 0

Karthikeyan Ganesan
Karthikeyan Ganesan

Reputation: 2035

you just run adb uninstall {{package_name}}. That's it. Now you try the build.

Upvotes: 0

Mehdi Soleymani
Mehdi Soleymani

Reputation: 11

You have to sign your application and then run it!

If you are preparing a new update for your application, it is not a problem to continue working. In the end, before releasing the prepared version, when you sign the application, the problem will be solved and users will have no problem installing your application.

Upvotes: 1

Saeed Arianmanesh
Saeed Arianmanesh

Reputation: 1428

Samsung Galaxy Phones has a feature Known as Secure Folder Removing App from That Solved The problem for me.

also adb uninstall packagename can Not remove App from Secure folder.

Upvotes: 2

Paul Effrem
Paul Effrem

Reputation: 1

If you are attempting to debug from a different computer than you were originally you will get the dreaded INSTALL_FAILED_UPDATE_INCOMPATIBLE error. However, there is a way to proceed without uninstalling the app and losing your data.

To see how to transfer the debug.keystore that is required so you don't get the message "The device already has an application with the same application but a different signature. In order to proceed you will have to uninstall the existing application." (and lose your data). See Update the app in another machine with same debug.keystore in android

Upvotes: 0

Andrija
Andrija

Reputation: 1017

I don't see anyone mentioning my case so let me add it - it happens when you build the app in one mode (e.g. Dev) and then try to override it with a different mode (e.g. Production).

The solution is the same as for the other cases - delete the app on the device/simulator and run again.

Upvotes: 0

Adam Katz
Adam Katz

Reputation: 6962

I just spent an hour trying to debug this and then realised that i was connected to my emulator instead of my phone. So even though i had succesfully deleted the app on my phone it was still failing. Stupid mistake but maybe this will help someone else.

Upvotes: 1

Manohar Reddy Poreddy
Manohar Reddy Poreddy

Reputation: 27485

C:\android-sdk\platform-tools\adb.exe: Command failed with exit code 1

Error output: adb: failed to install app\platforms\android\app\build\outputs\apk\debug\app-debug.apk: Failure [INSTALL_FAILED_UPDATE_INCOMPATIBLE: Package com.example.app1 signatures do not match the previously installed version; ignoring!]

Solution:

You already have the app app1 installed on phone (mostly download from play console, or upload key is changed)
Uninstall the app.

More details:

It's possible that you already have this app uploaded to play store using upload key, play console applied its own signature to it. That's why the app in your phone downloaded from google play does not have the same signature of your upload key.

By uninstalling app, there is no play store version of app, so mis-matches when you install a new version to you phone.

Hope that helps.

Upvotes: 2

DesignIsLife
DesignIsLife

Reputation: 540

If your Manifest file has this line -

android:sharedUserId="android.uid.system"

is causing this error! just comment this line and you are good to go!!

Upvotes: 0

user1300214
user1300214

Reputation:

This can happen if you sign your application with a different certificate. You can always use

adb install -r myapk.apk

to overwrite an existing apk on your device, but you will still get the error if you signed the new apk with a different certificate that of the installed apk.

In that scenario you would need to uninstall the apk from your device before attempting an install. However, this can also impact your application since your original signing may be tied to certain Developor API's, so you may need to update the console with your new credentials.

Upvotes: 9

Prashant Jajal
Prashant Jajal

Reputation: 3627

its occurred if you build your apk from some other PC and update it from different PC.

Upvotes: 0

artem
artem

Reputation: 16798

I just renamed the package and it worked for me.

Or if you are using Ionic, you could delete the application and try again, this happens when ionic detects that the app you are deploying is not coming from the same build. It often happen when you change from pc.

Upvotes: 8

Ignacio Tomas Crespo
Ignacio Tomas Crespo

Reputation: 3571

It happened to me when I installed a dev build using Instant Run, and uninstalled from Google Play. For some reason the data from Instant Run is still in the device and can't install/uninstall the app again.

Only way to fix it: - disable Instant Run in android studio - install from android studio (it should work only from here) - uninstall app

now it should be clean to install from Google Play or adb.

Upvotes: 0

Pankaj
Pankaj

Reputation: 5250

I got the same issue and did following to fix it.

  1. Settings > Storage > Clear Cached Data
  2. Settings > Apps > Uninstall the apps showing there. I had uninstalled my apps but it was showing there.
  3. Restart and then everything went fine.

Upvotes: 1

stevyhacker
stevyhacker

Reputation: 1877

For MIUI users, apart for usual USB debugging option be sure to enable these settings as well:

Install via USB
USB debugging(Security settings)

then accept the prompt when you try installing app again.

Upvotes: 1

Jorgesys
Jorgesys

Reputation: 126563

Uninstalling the application would be enough to avoid this problem.

INSTALL_FAILED_UPDATE_INCOMPATIBLE

but sometimes even uninstalling the message is raised again, it occurs in Android OS 5.0 +, so this is the solution:

Go to Settings > Apps and you will find your app with the message:

"Not installed for this user" enter image description here

We have to uninstall manually for all users!, then we can install our compiled application with no problems.

enter image description here

Another options:

  • Remove the old application and install again.

  • Use Android Debug Bridge command:

    adb uninstall [PACKAGE NAME]

Upvotes: 115

fordreamxin
fordreamxin

Reputation: 125

if the APK is built in project with Android.mk file. Maybe it's because of the sign certificate has been changed.

in my problem, I have add LOCAL_CERTIFICATE := platform. as the original apk is signed without this tag.

Upvotes: 4

Reaz Murshed
Reaz Murshed

Reputation: 24231

The question was why he's getting this error. Uninstalling will solve this problem but in my case, while I was installing the compiled version of the apk, the problem raised. I was trying to build an update for my application. So what I did, I built a signed apk and then tried to install the apk and the apk installed perfectly. So, rather removing the old apk, I had to sign the newer update and then installed it.

Upvotes: 9

Mohammed Nathar
Mohammed Nathar

Reputation: 59

RankoR@ you must have installed the application from a different computer. in my case thats where the problem arose .. all you need to do is just uninstall the application and reinstall it or run it from the computer you are working .. this might be a late reply but it will help some one .. thanks

Upvotes: 0

user3278378
user3278378

Reputation: 99

  1. go to : your adb folder \sdk\platform-tools\
  2. type cmd
  3. type : adb remount on command window
  4. adb shell
  5. su
  6. rm /system/app/YourApp.apk
  7. Restart your device

Upvotes: 9

Pratik Butani
Pratik Butani

Reputation: 62419

In my case, I have installed Application from Playstore and after when I am trying to run from Eclipse or Android Studio so it will try to install again on that APK that will not allow.

So First of all you have to Uninstall that Siged APK and after that you have to try.

Thank you.

Upvotes: 1

Mark Pazon
Mark Pazon

Reputation: 6205

If your device supports multiple users, you might have to delete the app for each account as well.

I usually use adb and that does the trick adb uninstall <your-package-name>

Upvotes: 4

Jetti Madhu
Jetti Madhu

Reputation: 1068

  1. Go to Setting/Apps/ Search for your app and uninstall...
  2. open command prompt and "adb uninstall "

It´s worked for me

Upvotes: 1

dharmendra
dharmendra

Reputation: 7881

Two ways that can be works

1: Uninstall app from mobile device manually

2: Open command prompt , trace path of adband execute following command

adb uninstall your_package_name

Upvotes: 23

neteinstein
neteinstein

Reputation: 17613

This maybe because you have more than one user in your device and you've just deleted the app on one (leaving the apk still present for the other(s)).

I've deleted in all accounts, and it worked afterwards.

Upvotes: 7

Luis Colom&#233;
Luis Colom&#233;

Reputation: 101

Go to Setting/Apps/ Search for your app and unistall...

It´s worked for me

Upvotes: 1

Related Questions