我该如何在手机上而不是模拟器中调试我的Android应用程序?
我的操作系统是Linux。当我尝试连接我的移动设备进行调试时,它没有响应。
在Android清单文件中将应用程序声明为“debuggable”。
在Eclipse中,当查看Manifest时,您可以在右侧的Application选项卡中进行此操作(将Debuggable设置为true)。否则,在AndroidManifest.xml
文件中,将android:debuggable =“true”
添加到<application>
元素中。
设置设备以允许安装非市场应用程序。
在设备上,转到Settings > Applications并启用Unknown sources(在Android 4.0设备上,该设置位于Settings > Security中)。
在设备上打开“USB调试”。
在设备上,转到Settings > Applications > Development并启用USB debugging(在Android 4.0设备上,该设置位于Settings > Developer options中)。
设置系统以检测您的设备。
ATTR{idVendor}
属性所指定。有关供应商ID的列表,请参见下面的USB Vendor IDs。在Ubuntu Linux上设置设备检测:
/etc/udev/rules.d/51-android.rules
.SUBSYSTEM ==“usb”,ATTR {idVendor} ==“0bb4”,MODE =“0666”,GROUP =“plugdev”
MODE
分配指定读/写权限,而GROUP
定义拥有设备节点的Unix组。udev
文档。有关规则语法的概述,请参见编写udev规则的指南。chmod a+r /etc/udev/rules.d/51-android.rules
platform-tools/
目录下执行adb devices
来验证设备是否已连接。如果已连接,你会看到设备名称列在“device”下。-d
标志发出命令以定位所连接的设备。sudo chmod a+r /etc/udev/rules.d/51-android.rules
吗?另外,你是在运行Ubuntu吗?你创建的文件末尾是否包含我复制文本时意外突出显示的 .
?如果是这样,请从该步骤重新开始,并不要包含 .
- 我编辑了说明以修复该错误 :) - Merlyn Morgan-Graham.
(因为我曾经不小心告诉过你)?检查一下那个目录(ls
)并查看哪些文件是存在的。 - Merlyn Morgan-Graham设置您的设备以允许安装非市场应用程序。
在设备上,转到“设置”>“应用程序”,并启用未知来源(在Android 4.0设备上,该设置位于“设置”>“安全”中)。
打开“USB调试”。
在设备上,转到“设置”>“应用程序”>“开发”并启用USB调试(在Android 4.0设备上,该设置位于“设置”>“开发人员选项”中)。
设置您的系统以检测您的设备。
如果您正在使用Ubuntu Linux进行开发,则需要添加一个udev规则文件,其中包含每种类型的设备的USB配置。在规则文件中,每个设备制造商都由唯一的供应商ID标识,如ATTR{idVendor}
属性所指定。有关供应商ID的列表,请参见下面的USB供应商ID。要在Ubuntu Linux上设置设备检测:
Log in as root and create the file /etc/udev/rules.d/51-android.rules
.
Use this format to add each vendor to the file:
SUBSYSTEM=="usb", ATTR{idVendor}=="0bb4", MODE="0666", GROUP="plugdev"
chmod a+r /etc/udev/rules.d/51-android.rules