无法在rooted设备上安装软件包:INSTALL_FAILED_INVALID_URI

时间:2014-07-23 13:40:56

标签: android android-studio

这是我在设备上安装应用程序时看到的内容(我使用的是Android Studio 0.8.2):

Waiting for device.
Target device: samsung-gt_s7500-cf994b04
Uploading file
local path: C:\Users\Administrator\AndroidStudioProjects\Testaqua\app\build\outputs\apk\app-debug.apk
remote path: /data/local/tmp/com.example.administrator.testaqua
Installing com.example.administrator.testaqua
DEVICE SHELL COMMAND: pm install -r "/data/local/tmp/com.example.administrator.testaqua"
pkg: /data/local/tmp/com.example.administrator.testaqua
Failure [INSTALL_FAILED_INVALID_URI]

七个地狱中的错误是什么意思?

[编辑]我在另一个root设备上安装了我的应用程序,它运行良好;似乎问题是我的设备,android studio运行正常。

4 个答案:

答案 0 :(得分:14)

我得到类似的错误消息,我通过传递绝对路径而不是文件名来修复它,例如在adb shell内,此命令将显示:

shell@example:/sdcard $ pm install -r -d app-release.apk
        pkg: app-release.apk
Failure [INSTALL_FAILED_INVALID_URI]

将其更改为修复该错误消息的绝对路径,例如:

pm install -r -d /sdcard/app-release.apk

[第二个原因]

另一个原因是该文件不存在。最近我通过 Ctrl + C 中断adb push <apk> /sdcard/时会发生这种情况。重新推送apk 两次

[第三个原因]

如果apk驻留/mnt/runtime/default/<thumb_drive_mounted_directory>,则会发生此错误,我必须先将apk移至/sdcard/进行安装。

答案 1 :(得分:7)

从此blog试试这个:

/data/local的权限更改为rwxrwxrwx(通常必须为rwxrwxrw-

即。向所有用户授予执行权限。

答案 2 :(得分:2)

症状:`

$ adb install xyz.apk
[100%] /data/local/tmp/xyz.apk
    pkg: cat
    ver: /data/local/tmp/xyz.apk
Failure [INSTALL_FAILED_INVALID_URI]

溶液:

检查您是否允许从未知来源安装启用:)

enter image description here

答案 3 :(得分:1)

最后我发现原因是dir和文件许可。
Android似乎使用其他用户访问目录和文件。

chmod 775 / data / local / tmp / somedir ==&gt; rwxrwx R-X
chmod 774 /data/local/tmp/somedir/a.apk ==&gt; rwxrwx的 [R -

以上设置即可!