adb使用过程常见的几种错误总结
问题1:Failure [INSTALL_FAILED_ALREADY_EXISTS]
问题原因:该程序已存在。
解决方法:增加-r参数,即可成功覆盖安装
问题2:Failure [INSTALL_FAILED_UID_CHANGED]
问题原因:卸载不完全,有残留文件,导致无法安装。
解决方法:进入/data/data中,把对应的包名文件夹删了,就可以正常安装了。(前提:有root)
问题3:Error:insufficient permissions for devices
问题原因:adb命令首次运行时会启动一个server守护(daemon)进程,用于与Android设备的交互。由于ubuntu的权限问题导致该守护进程无法访问设备。
暂时解决方案:使用root权限重启adb
username@PC3GD000579:~$ sudo -s
[sudo] password for username: 输入密码。
root@PC3GD000579:~# adb kill-server
root@PC3GD000579:~# adb start-server
* daemon not running. starting it now on port 5037 *
* daemon started successfully *
root@PC3GD000579:~# exit
exit
永久解决方案:配置usb设备规则
- sudo gedit /etc/udev/rules.d/51-android.rules
- 天假SUBSYSTEM==”usb”,ENV{DEVTYPE}==”usb_device”,MODE=”0666”后保存即可。
- 重启adb
问题4:List of devices attached为空
初级解决方案:
- 检查是否开启USB调试;(若已开启,则关闭后重启试试)
- 检查是否数据线有问题;
- 若usb调试已开启仍不能检测到手机,则可采用终极解决方案。
终极解决方案:
1) 打开命令行高端,输入“lsusb”,拔掉数据线,再输入“lsusb”
2) 查看哪个端口不同,记下端口号
Bus 001 Device 034: ID 2717:9039
则VID是0x2717
3) 输入“cd ~/.android”。在用户的home目录下,进入.android目录(若没有,就新建该目录,新建命令为:mkdir .android)
4) 在此目录下,输入“sudo gedit adb_usb.ini”,修改adb_usb.ini文件
5) 在文本框中输入0x2717,点击保存
6) 连上数据线,杀掉adb服务,再重启adb服务即可。如果仍然不可以,请重启电脑后重连!
问题5:adb devices 提示offline
问题原因:adb版本太旧,旧版本不支持4.2.2以上系统或小米V5
解决方法:更新adb版本
操作步骤:
1) 检查adb版本:adb version;
2) 更新到1.0.31或以上版本:sudo find / -name adb
3) 拔掉usb线,重新连接
4) 如果adb版本已更新到1.0.31,但仍存在offline问题,则更新platform tool到16.0.1以上版本;
5) 重启手机,重新连接。
问题6:INSTALL_PARSE_FAILED_INCONSISTENT_CERTIFICATES
2446 KB/s (6146692 bytes in 2.453s
pkg: /data/local/tmp/Go_Weather_EX_v3.7_200_svn_39046_Free.apk
Failure [INSTALL_PARSE_FAILED_INCONSISTENT_CERTIFICATES]
问题原因:签名不一致。
解决方法:卸载原安装包,再重新安装新包即可。
问题7:INSTALL_FAILED_INSUFFICIENT_STORAGE
2446 KB/s (6146692 bytes in 2.453s)
pkg: /data/local/tmp/Go_Weather_EX_v3.7_200_svn_39046_Free.apk
Failure [INSTALL_FAILED_INSUFFICIENT_STORAGE]
问题原因:没有足够的存储空间。
解决方法:卸载一些安装包再进行安装。
最后列举一些网上找到的常见的安装apk错误类型
INSTALL_FAILED_ALREADY_EXISTS 程序已经存在
INSTALL_FAILED_INVALID_APK 无效的apk
INSTALL_FAILED_INVALID_URI 无效的链接
INSTALL_FAILED_INSUFFICIENT_STORAGE 没有足够的存储空间
INSTALL_FAILED_DUPLICATE_PACKAGE 已存在同名程序
INSTALL_FAILED_NO_SHARED_USER 要求的共享用户不存在
INSTALL_FAILED_UPDATE_INCOMPATIBLE 版本不能共存
INSTALL_FAILED_SHARED_USER_INCOMPATIBLE 需求的共享用户签名错误
INSTALL_FAILED_MISSING_SHARED_LIBRARY 需求的共享库已丢失
INSTALL_FAILED_REPLACE_COULDNT_DELETE 需求的共享库无效
INSTALL_FAILED_DEXOPT dex优化验证失败
INSTALL_FAILED_OLDER_SDK 系统版本过旧
INSTALL_FAILED_CONFLICTING_PROVIDER 存在同名的内容提供者
INSTALL_FAILED_NEWER_SDK 系统版本过新
INSTALL_FAILED_TEST_ONLY 调用者不被允许测试的测试程序
INSTALL_FAILED_CPU_ABI_INCOMPATIBLE 包含的本机代码不兼容
CPU_ABIINSTALL_FAILED_MISSING_FEATURE 使用了一个无效的特性
INSTALL_FAILED_CONTAINER_ERROR SD卡访问失败
INSTALL_FAILED_INVALID_INSTALL_LOCATION 无效的安装路径
INSTALL_FAILED_MEDIA_UNAVAILABLE SD卡不存在
INSTALL_FAILED_INTERNAL_ERROR 系统问题导致安装失败
DEFAULT 未知错误
adb使用过程常见的几种错误总结的更多相关文章
- A query was run and no Result Maps were found for...原来是mapper.xml文件出了问题,是使用MyBatis最常见的一种错误
今天遇到一个问题,原来是mapper.xml文件出了问题,是使用MyBatis最常见的一种错误 报错的结果是这样的: A query was run and no Result Maps were f ...
- Elon Mask 写作常见的三种错误
(其实非常的文不对题,这篇文章和写作的并没有多大的关系,如果是想看关于写作的技巧,可以直接离开,节省您的时间) 这是原文 写作就是在把你自身的想法用正确,合适的方式表达出来,但是不正确的表达可能会导致 ...
- 快速排序partition过程常见的两种写法+快速排序非递归实现
这里不详细说明快速排序的原理,具体可参考here 快速排序主要是partition的过程,partition最常用有以下两种写法 第一种: int mypartition(vector<int& ...
- MySQL读取Binlog日志常见的3种错误
1. mysqlbinlog: [ERROR] unknown variable 'default-character-set=utf8mb4' 当我们在my.cnf中添加default-charac ...
- django-Views之常见的几种错误视图代码(三)
1.404 page not found(找不到对应的页面) 2.500 server error(服务器错误) 3.400 bad request(无效的请求) 4.403 HTTP forbidd ...
- JS中常见的几种报错类型
1.SyntaxError(语法错误) 解析代码时发生的语法错误 var 1a; //Uncaught SyntaxError: Invalid or unexpected token 变量名错误 c ...
- MySQL常见的8种SQL错误用法
MySQL常见的8种SQL错误用法 前言 MySQL在2016年仍然保持强劲的数据库流行度增长趋势.越来越多的客户将自己的应用建立在MySQL数据库之上,甚至是从Oracle迁移到MySQL上来.但也 ...
- 5种常见的Docker Compose错误
在构建一个容器化应用程序时,开发人员需要一种方法来引导他们正在使用的容器去测试其代码.虽然有几种方法可以做到这一点,但 Docker Compose 是最流行的选择之一.它让你可以轻松指定开发期间要引 ...
- 避免常见的6种HTML5错误用法
一.不要使用section作为div的替代品 人们在标签使用中最常见到的错误之一就是随意将HTML5的<section>等价于<div>——具体地说,就是直接用作替代品(用于样 ...
随机推荐
- 基于Opencv的人脸检测及识别
一.实验目的:我这里完成的是,将8张人脸图片(4组,每组两张)存入库中,选取1张图片,程序识别出与其匹配的另一张. 这里介绍分三个步骤完成该工作,①程序读取摄像头.拍照 ②程序从电脑文档中读取图片 ...
- 20155333 2016-2017-2 《Java程序设计》第三周学习总结
20155333 2016-2017-2 <Java程序设计>第三周学习总结 教材学习内容总结 第四章 类定义时使用class关键词,名称使用Clothes,建立实例要使用new关键词. ...
- 20145209 2016-2017-2 《Java程序设计》课程总结
20145209 2016-2017-2 <Java程序设计>课程总结 每周作业链接汇总 预备作业01 http://www.cnblogs.com/liuyiyang/p/6194319 ...
- css实现div两列布局——左侧宽度固定,右侧宽度自适应(两种方法)
原文:css实现div两列布局--左侧宽度固定,右侧宽度自适应(两种方法) 1.应用场景 左侧一个导航栏宽度固定,右侧内容根据用户浏览器窗口宽度进行自适应 2.思路 首先把这个问题分步解决,需要攻克以 ...
- ConfigurationManager 读写AppSettings键值对
using System; using System.Configuration; namespace ConsoleApplication1 { class Program { static voi ...
- 使用iChecker的注意事项
1. 要先引用jquery 2. ichecker分好多主题,每个主题带好几种颜色,在配置的时候最好指定一下. 比如引入了square主题的blue颜色演示,配置项中checkboxClass就写ic ...
- 深入解析QML引擎, 第1部分:QML文件加载
译者注:这个解析QML引擎的文章共4篇,分析非常透彻,在国内几乎没有找到类似的分析,为了便于国内的QT/QML爱好者和工作者也能更好的学习和理解QML引擎,故将这个系列的4篇文章翻译过来.翻译并不是完 ...
- selenium自动化之js处理点击事件失效
有时候,元素明明已经找到了,使用click()就是无法触发点击事件(当然,这种情况十分少见,至少我只遇到过一次).下面告诉大家这种场景的解决方案. 使用js代码来点击[博客园]这个按钮 代码: #!/ ...
- zepto 添加 animate组件
今天发现JQuery可以用 animate方法回到顶部,心想着zepto应该也可以 $('html,body').animate({ scrollTop: 0 }, 1000); 于是便用了一下,发现 ...
- C++11的左值引用与右值引用总结
概念 在C++11中,区别表达式是左值或右值可以做这样的总结:当一个对象被用作右值的时候,用的是对象的值(内容):当对象被用作左值的时候,用的是对象的身份(在内存中的位置).左值有持久的状态,而右值要 ...