如何使用我的Android手机在Linux中调试我的应用程序?

时间:2011-12-16 07:10:18

标签: android debugging

如何在移动设备中调试我的Android应用程序,而不是在模拟器中?

我的操作系统是Linux。当我尝试连接我的移动设备进行调试时,事实并非如此 响应。

3 个答案:

答案 0 :(得分:8)

针对移动设备进行调试的文档中回答了这个问题 设备: Using Hardware Devices

直接引用他们的文件:


  1. 在Android Manifest中将您的应用程序声明为“可调试” 在Eclipse中,您可以在查看清单时从应用程序选项卡执行此操作(在右侧,将可调试设置为 true )。否则,在AndroidManifest.xml文件中,将android:debuggable="true"添加到<application>元素。

  2. 设置您的设备以允许安装非市场应用程序 在设备上,转到设置&gt;应用程序并启用未知来源(在Android 4.0设备上,该设置位于设置&gt;安全)。

  3. 打开设备上的“USB Debugging” 在设备上,转到设置&gt;应用程序&gt;开发并启用 USB调试(在Android 4.0设备上,该设置位于设置&gt;开发人员选项中)。

  4. 设置系统以检测设备。

    • &lt; snip - 不使用Windows或Mac OS X&gt;
    • 如果您正在使用Ubuntu Linux进行开发,则需要添加udev规则文件,其中包含要用于开发的每种类型设备的USB配置。在规则文件中,每个设备制造商都由唯一的供应商ID标识,由ATTR{idVendor}属性指定。有关供应商ID的列表,请参阅下面的USB Vendor IDs。要在Ubuntu Linux上设置设备检测:
      1. 以root用户身份登录并创建此文件:/etc/udev/rules.d/51-android.rules 使用此格式将每个供应商添加到文件中:
        SUBSYSTEM=="usb", ATTR{idVendor}=="0bb4", MODE="0666", GROUP="plugdev"

        在此示例中,供应商ID用于HTC。 MODE赋值指定读/写权限,GROUP定义哪个Unix组拥有设备节点。
        注意:根据您的环境,规则语法可能略有不同。根据需要查阅系统的udev文档。有关规则语法的概述,请参阅本指南writing udev rules
      2. 现在执行:
        chmod a+r /etc/udev/rules.d/51-android.rules
  5. 您可以通过执行SDK adb devices目录中的platform-tools/来验证设备是否已连接。如果已连接,您将看到设备名称列为“设备”。

    如果使用Eclipse,请照常运行或调试您的应用程序。您将看到一个设备选择器对话框,其中列出了可用的仿真器和连接的设备。选择要安装的设备并运行该应用程序。

    如果使用Android Debug Bridge(ADB),您可以发出带有-d标记的命令,以定位您已连接的设备。

答案 1 :(得分:4)

<强> Setting up a Device for Development

设置您的设备以允许安装非市场应用程序。

  1. 在设备上,转到设置&gt; 应用并启用未知来源(在Android 4.0设备上,该设置位于设置&gt; 安全)。

  2. 开启“USB调试”。

  3. 在设备上,转到设置&gt; 应用&gt; 开发并启用USB调试(在Android 4.0设备上,该设置位于设置&gt; 开发人员选项中)。

    < / LI>
  4. 设置系统以检测设备。

  5. 如果您正在使用Ubuntu Linux进行开发,则需要添加一个udev规则文件,其中包含您要用于开发的每种类型设备的USB配置。在规则文件中,每个设备制造商都由唯一的供应商ID标识,由ATTR{idVendor}属性指定。有关供应商ID的列表,请参阅下面的USB供应商ID。在Ubuntu Linux上设置设备检测:

    1. 以root身份登录并创建文件/etc/udev/rules.d/51-android.rules

    2. 使用此格式将每个供应商添加到文件中:

      SUBSYSTEM=="usb", ATTR{idVendor}=="0bb4", MODE="0666", GROUP="plugdev"
      
    3. 在此示例中,供应商ID适用于HTC。 MODE分配指定读/写权限,GROUP定义哪个Unix组拥有设备节点。 注意:根据您的环境,规则语法可能略有不同。根据需要查阅系统的udev文档。有关规则语法的概述,请参阅编写udev规则的本指南。

      现在执行:

      chmod a+r /etc/udev/rules.d/51-android.rules
      

答案 2 :(得分:-1)

在Android 4.2及更高版本中,默认情况下隐藏开发人员选项。要使其可用,请转到设置&gt; 关于手机点击内置版本号七次。返回上一个屏幕以查找开发人员选项。