2012-06-15 160 views
0

我正在尝试为Android 2.1 htc eris上的应用程序执行方法分析。它抱怨:sdcard权限被拒绝android

06-15 15:48:04.602: E/dalvikvm(826): Unable to open trace file '/sdcard/com.mayapp.trace': Permission denied 

我为用户权限在我的AndroidManifest.xml中输入以下内容:

<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/> 

当我做亚行推,我得到以下错误:

adb push AndroidManifest.xml a.txt 
failed to copy 'AndroidManifest.xml' to 'a.txt': Read-only file system 

我在这里错过了什么吗?

+0

应用程序在启动时崩溃了吗?我对这个特定权限并不十分确定,但通常,当我忘记向清单中添加权限时,会引发安全异常。编辑:无论哪种方式,从使用DDMS工具的分析器读取数据是ADB的一部分,而不是您的应用程序,因此添加/不添加该权限不会影响您通过ADB读取文件的能力。我认为你的问题在别处。确保你的SD卡是好的,测试普通的adb推/拉操作,看看文件的权限是否好等。 – AlexRamallo

+0

不,应用程序不会崩溃。但是我无法使Method Profiler正常工作。 – ssk

+0

(我编辑了我的最新评论,提供了一些更多的想法) – AlexRamallo

回答

0

这是一个很糟糕的SD卡和SD卡的读/写访问的组合。使用adb push/pull来验证SD卡,并使用adb remount更改访问权限。解决了这个问题。

0

这可能不是答案,但你可以使用

File dir = Environment.getExternalStorageDirectory(); 

访问外部SD卡。我的假设是你自己写了目录。

+0

我不需要显式访问外部存储,方法分析器会抱怨权限不可用。 – ssk