有时候开发的问题:会遇到在公司上班的时候,公司的IDE能跑程序,把程序拷贝回家,再跑一次,就会出现以下错误:

INSTALL_FAILED_UPDATE_INCOMPATIBLE

原因:就是你的安装包与之前设备上的安装包签名不一致。百度的时候,有的人说:运行太多次也会出现上述的问题,但我没遇到过。

简单处理:

如果你的程序只是自己跑着玩的,不是很重要的程序,那么你就改个包名就好了。之前,我都是这样处理的。

步骤:如图:

但是实际工作中,是不允许我们改包名,比如关联到了微信,支付宝,百度地图等,我们的包名是有提交到他们的官网上的。

那么怎么办呢?

提供一个比较坑的方法:如果是测试手机,那么格式化测试手机就好了。

以下是比较完整的一次排查过程:

问题:调试的时候,用的是默认签名的方式(即debug签名),导出的时候,用的是自己的debug签名,在同一台手机上安装不上。

解决过程:

如果你以前的程序是采用默认签名的方式(即debug签名),一旦换了新的签名应用将不能覆盖安装,必须将原先的程序卸载掉,才能安装上。

------> 别人都是卸载之后就可以安装上了,但是我的手机不行。

------> 我 :卸载了旧的,也root,删掉了data/data/包名。

------> 安装提示:替换应用,销售小助手1.0替换为1.0..提示程序未安装。

------> 是不是 系统 保存了相关的 包名和签名信息 ?

------> 是的话,也百度不到这个信息放哪里了。

继续百度:发现包名信息存放在 /data/system/packages.xml 中,需要root手机才可以从手机上看到这个文件。

------> 我们删除该应用包含的包名信息就好了。

步骤:

1. 采用 "adb uninstall 包名"  卸载之前的安装包,然后试一下是否能安装,不行再执行下一步。 --- 正常,执行这步就能解决问题

2. 在 /data/system/packages.xml 文件中删除该应用包含的包名信息就好了

2.1 我的做法:root手机,我的是魅族,直接可以root。之后安装RE管理器,进入/data/system/packages.xml把该文件复制到其他地方,共享到电脑,电脑上修改后,在覆盖原文件。

参考做法:我的手机不行。 -- 都要root手机

2.2 使用adb pull命令将这个文件导出,修改完,并用 adb push导入。

2.3 上述步骤不行,先adb remount (意思是 重新挂载系统分区)再adb pull命令将这个文件导出,修改完,并用 adb push导入。

2.4 上述步骤不行,

---> 执行  adb shell  命令  -- 执行的是Linux的命令

---> su (手机应该会弹出权限信息提示~~告诉你需要管理权限,并确认)  -- 获得超级权限

---> ls -l (查看当前目录下所有可见文件的详细属性)  drwxrwx--x   (d--文件夹)

这边怎么跑出一个system?回答:没有听说过Android除了Root还有system权限  你说的是user权限吧

参考:http://bbs.csdn.net/topics/360175988

---> mount -o remount,rw /data (重新将文件夹为可读可写。)  我的手机出现( Operation not permitted),没办法下一步

---> chmod 777 /data

或者参考别人的做法:http://blog.sina.com.cn/s/blog_4ba5b45e0102ek4k.html

2.5 在不行,使用2.1方法。

3. 重新安装新的应用即可

参考:http://blog.csdn.net/philofly/article/details/8090210

彻底解决INSTALL_FAILED_UPDATE_INCOMPATIBLE的安装错误、安装包与之前设备上的安装包签名不一致的更多相关文章

  1. 彻底解决INSTALL_FAILED_UPDATE_INCOMPATIBLE的安装错误

    利用adb shell进入系统,进入/data/app或者/data/data,删除跟你安装的apk同样的包名: 按Ctrl+C退出系统,利用adb pull /data/system/package ...

  2. 【转】彻底解决INSTALL_FAILED_UPDATE_INCOMPATIBLE的安装错误

    原文网址:http://bbs.9ria.com/thread-245162-1-1.html 利用adb shell进入系统,进入/data/app或者/data/data,删除跟你安装的apk同样 ...

  3. day3 自动部署安装软件到其他的机器设备上

    PS:原理是在本机创建boot.sh指向每一台主机,使用脚本命令去执行,然后就会自动安装软件 PS:boot.sh里面放着1.免密登录 2.发送每台机器install.sh 这个install.sh中 ...

  4. 【Abode Air程序开发】在设备上进行安装

    在设备上进行安装 在 Google Android 设备上安装应用程序 在 Apple iOS 设备上安装应用程序 在 Google Android 设备上安装应用程序 在项目的开发.测试和部署阶段, ...

  5. VS2017安装错误:工作负荷不完整,未能安装包“sqlcmdlnutils,version=15.1.61703.130,chip=x64,language=zh-CN”。

    场景:已安装的VS2017维护安装MVC4时出现如下错误: 看问题描述是由于sqlcmdlnutils安装失败影响到其它组件的安装,于是单独下载此安装包进行安装,发现安装一切正常,继续维护VS2017 ...

  6. ElasticSearch 集群环境搭建,安装ElasticSearch-head插件,安装错误解决

    ElasticSearch-5.3.1集群环境搭建,安装ElasticSearch-head插件,安装错误解决 说起来甚是惭愧,博主在写这篇文章的时候,还没有系统性的学习一下ES,只知道可以拿来做全文 ...

  7. eclipse安装错误的解决办法

    eclipse安装错误的解决办法 Eclipse 是一个集成开发环境,如Java,C,C++,PHP等安装Eclipse首先得先安装java的Jdk或者Jre 首先访问https://www.ecli ...

  8. .NET 3.5 安装错误的四个原因及解决方法

    .net framework 3.5 安装错误的四个常见原因及解决方法,飓风软件站整理,转载请注明. 1.清除所有版本 .NET Framework  安装错误后在系统中遗留的文件: 如果您以往安装过 ...

  9. MySQL编译安装错误:No curses/termcap library found的解决方法

    CentOS编译安装MySQL,./coonfigure时出现错误: checking for termcap functions library... configure: error: No cu ...

随机推荐

  1. 1099 Build A Binary Search Tree (30 分)(查找二叉树)

    还是中序遍历建树 #include<bits/stdc++.h> using namespace std; ; struct node { int data; int L,R; }s[N] ...

  2. Anaconda基本使用

    anaconda常用使用命令 显示安装程序包列表 conda list 选择其它的源 conda config --add channels https://mirrors.tuna.tsinghua ...

  3. 第一次软件工程作业补充plus

    一.代码的coding地址:coding地址. 二.<构建之法>读后问题以及感言(补充): 1.对于7.3MSF团队模型,7.2.6保持敏捷,预期和适应变化,中的"我们是预期变化 ...

  4. Thread suspend()挂起resume()恢复

    import javax.swing.*;import java.awt.*;import java.awt.event.ActionEvent;import java.awt.event.Actio ...

  5. BZOJ3990 排序(sort)

    排序(sort) 题目描述 小A有一个1~2N的排列A[1..2N],他希望将数组A从小到大排序.小A可以执行的操作有N种,每种操作最多可以执行一次.对于所有的i(1<=i<=N),第i种 ...

  6. poj 2186 强连通入门题目

    每头牛的梦想就是成为牛群中最受欢迎的牛. 在一群N(1 <= N <= 10,000)母牛中, 你可以得到M(1 <= M <= 50,000)有序的形式对(A,B),告诉你母 ...

  7. 转:用VMProtect和ASProtect 的SDK加密应用程序

    最近想用VMProtect和ASProtect 的SDK加密一个程序,结果搞了半天没搞成,网上没看到在VC中如何使用VMProtect的SDK加密,于是琢磨了一下,总算成功了,最后有一点点心得,与大家 ...

  8. RSA解密报错java.security.spec.InvalidKeySpecException的解决办法

    java.security.spec.InvalidKeySpecException: java.security.InvalidKeyException: IOException : algid p ...

  9. libaio.so.1: cannot open shared object file

    <pre code_snippet_id="275763" snippet_file_name="blog_20140404_1_5530152" nam ...

  10. python的资源整合

    一位大牛整理的Python资源 Python基本安装: * http://www.python.org/ 官方标准Python开发包和支持环境,同时也是Python的官方网站:* http://www ...