# 关于adb push XX.apk /system/app/XX.apk 时出现错误:No space left on device 错误

关于adb push XX.apk /system/app/XX.apk 时出现错误:No space left on device 错误

因为之前没有直接用adb去安装一个程序,也不是很熟悉其中涉及的一些指令。在一次项目的过程用自己的测试机器来安装apk是没有问题的,但是换了一台测试机去安装这个apk,出现了一个未曾见过的错误:

failed to copy ‘E:\Android\apk\xx.apk’to’/system /app/xx.apk’: No space left on device

这个错误的意思是你的存储空间不足,但是一看SD卡剩余的存储空间还很多。后面查了资料才发现这个说的存储空间并不是指你的SD卡的存储空间。
在这里我们用命令来查看一下设备剩余存储:

1、adb shell
2、su
3、df system/

# 关于adb push XX.apk /system/app/XX.apk 时出现错误:No space left on device 错误_第1张图片

可以看到当前设备只有15M剩余,当你安装的apk大小超过这个大小时,那么就会提示你:No space left on device。

解决方式

接下来让我们看看当前设备安装了多少apk:

1、adb shell
2、cd system/app(进入到系统文件夹中)
3、ls

查看设备存在中有哪些apk
# 关于adb push XX.apk /system/app/XX.apk 时出现错误:No space left on device 错误_第2张图片

其中有很多事没有用到的apk,但是它在里面占用了存储空间,现在要做的就是删除一些无用的apk。

ls -al

这个指令可以让我们看到apk占用的空间大小。然后根据占用空间的大小删除一些无用的apk包。
# 关于adb push XX.apk /system/app/XX.apk 时出现错误:No space left on device 错误_第3张图片

这里删除掉BackCar.apk看到占用空间大,且没有用的apk包,将其删除。
删除指令

rm -r xx.apk

# 关于adb push XX.apk /system/app/XX.apk 时出现错误:No space left on device 错误_第4张图片

在最后提示一下,我删除的是系统中默认的程序,所以上诉操作都是基于设备Root之后才能操作。
也不知道说的对不对,如果有不对的或者有更好的解决方式,请多多指教,谢谢!


你可能感兴趣的:(Android学习之路)