3

我有一个用于 sprint 的 nexus S,我将其用作开发人员手机,该手机植根于运行 android 4.1。Eclipse 可以识别手机、驱动程序等。我可以运行“adb devices”并显示手机 ID。但是,如果我尝试调试我的应用程序或任何其他导入的项目,我会收到以下错误:

无法打开 zip '/data/local/tmp/com.myapp.apk':权限被拒绝

(我会发布图片,但之前没有在这里发布过)

如果我手动传输 .apk 并通过 Astro 进行安装,一切都会完美运行。我非常迷茫,任何帮助将不胜感激。

4

6 回答 6

6

对于使用更新版本的 siyah 内核查看此内容的任何人,如果您不想切换内核,您可以使用“ExTweaks”应用程序更改“MISC”下名为“ADB Binary Mode”的设置。我将其设置为“Development ADB”(原为“Normal ADB”),现在可以使用 Eclipse 成功调试!:D

于 2012-10-14T10:32:56.250 回答
3

我的 Galaxy S2 中安装了自定义 ROM。通过谷歌搜索我来到这个帖子: http: //forum.xda-developers.com/showpost.php?p=29454043 &postcount=203

我的问题也是内核(Siyah 3.5.2)。

我为 JB 安装了另一个内核(http://developer.clockworkmod.com/downloads/51/3354/kernel-cm-10-20120801-i9100-signed.zip),问题就解决了。

于 2012-08-03T13:23:41.193 回答
0

我将 SGS3 (I9300) 更新为库存 4.1.1 ROM,我遇到了同样的问题。

在我在这里和其他地方尝试所有建议失败后:

  • 清理所有项目
  • 通过 adb chmod 777 安装 /data/local/tmp (和直接子文件夹)
  • 跳鸡舞(不知道是谁建议的,但至少它产生了一些笑声;)
  • 等等

我安装了 SiyahKernel S3-v1.6.8,问题就消失了。

在检查了我的 UMASK 后,我看到它现在是 0000(在股票内核上是 0077),所以我得出结论,错误的 UMASK 是错误的根本原因

尽管如此,从关于这个问题的许多其他线程可以看出,股票内核导致这个问题是非常错误的。

于 2012-10-24T11:56:42.087 回答
0

基本上

/数据/本地

没有正确的权限,所以很简单:

adb shell
cd /data
chmod 777 local

应该管用。(不确定新权限是否过于宽泛,但我并不太担心)

于 2012-07-17T04:38:23.973 回答
0

根据 ekim 的回答,我再次遇到了同样的问题,比如 Galaxy S2 等。最新版本的 Siyah 解决了这个问题,我可以从 Eclipse 重新开始运行/调试。

于 2012-08-08T00:34:15.040 回答
0

这是查看是否是权限问题的快速方法:
adb install -s Your.apk

这将安装在 SD 卡上,而不是 /data/local

于 2013-01-05T18:16:58.240 回答