Android Studio中如何为DEX文件赋予可写权限?
Android Studio中如何为DEX文件赋予可写权限?
遇到过一模一样的问题!DEX作为编译后的字节码文件,Android Studio默认会把它标记为只读资源,常规的锁按钮、文件属性修改确实经常不管用,给你几个亲测有效的解决思路:
检查系统级文件权限
找到这个DEX文件在电脑本地的实际存储路径(别在Android Studio的项目面板里找,直接去系统文件夹定位它):- Windows系统:右键文件→属性,确保“只读”选项未被勾选,若勾选则取消后点击应用
- Mac/Linux系统:打开终端,切换到文件所在目录,执行
chmod +w 你的文件名.dex命令赋予可写权限
修改完成后务必重启Android Studio,因为AS的缓存可能会导致权限变更无法即时生效
脱离项目目录编辑
项目内的DEX文件可能被Gradle构建缓存或AS的索引机制锁定,你可以先将DEX文件复制到桌面这类非项目目录下,修改好权限后再进行编辑,编辑完成后替换回项目中的原文件即可换用反编译转源码的方式操作
直接编辑DEX字节码本身难度较高,更稳妥的方式是用反编译工具将DEX文件转换为Java源码,修改源码后再重新编译生成DEX文件。这种方法不仅绕开了权限问题,编辑体验也会顺畅很多清理Android Studio缓存
如果以上方法都无效,可能是AS的文件索引出现异常。点击顶部菜单栏的File→Invalidate Caches...→选择Invalidate and Restart,待AS重启完成后再尝试打开文件
内容来源于stack exchange
相关产品推荐
相关产品推荐

