我有一部已经获取了root权限的摩托罗拉Defy+手机,上面运行着由Quarx制作的Cyanogenmod v11定制ROM(每夜版)。当我尝试使用Android Studio Workspace(ASW)v.1.1.0在这个设备上进行调试时,出现了问题。
????????????[null]
在“选择设备”窗口中列出,在Logcat窗口中显示
insufficient permissions for device
我希望能够使用此设备和ROM进行调试。
当我在命令行中输入lsusb
,我会得到以下结果:
Bus 002 Device 002: ID 22b8:431d Motorola PCS
这是适用于Motorola设备的正确设备ID。我已在/etc/udev/rules.d/
中安装了51-android.rules和71-android.rules,并在这些文件中使用了正确的Motorola ID。
我还尝试了在设备上从开发人员选项中撤销USB调试权限,但没有成功。
我还没有尝试以root身份运行ASW,希望可能有其他选项;有吗?
更新: 我已经能够通过以下方式进入并访问ADB
uvachem-gsmith2:/home/greg/Android/Sdk/platform-tools # ./adb
然后我执行了kill server,切换到root用户并重启了服务器。接着尝试从Android Studio连接设备,在设备上收到有关接受来自电脑的RSA密钥的消息,选择“是”,然后就能将应用部署到设备上了。所以回到我的最初的问题,有没有其他方法可以在不以root身份登录的情况下访问这个设备?似乎这个手机文件系统存在权限问题阻止了这个过程...
更新#2 核心问题在于权限设置。虽然以root身份运行ADB将允许访问经过root处理的Android设备,但更好的解决方案是更改udev文件中此设备的权限... 将664重置为666(请参见下面的答案)。这将允许计算机访问设备上的文件系统。