【发布时间】:2011-04-29 19:33:41
【问题描述】:
我编写了一个带有远程接口的服务并将其安装在我的 PC 的 Eclipse AVD 上。我有一个客户端测试工具,它启动并调用服务中的方法。最初,我通过一个控件类和活动安装了该服务,现在我已将其删除,因此该服务的清单如下所示:
<?xml version="1.0" encoding="utf-8"?>
<manifest
xmlns:android="http://schemas.android.com/apk/res/android"
package="com.myname.gridservice"
android:versionCode="1"
android:versionName="1.0">
<application
android:icon="@drawable/icon"
android:label="@string/app_name"
android:debuggable="true">
<service
android:enabled="true"
android:debuggable="true"
android:name="OverlayService">
<intent-filter>
<action android:name="com.myname.OverlayService.SERVICE"/>
<action android:name="com.myname.gridservice.IRemoteInterface" />
</intent-filter>
</service>
</application>
</manifest>
所以没有活动标签。
当我从 Eclipse 中的调试图标启动它时,控制台告诉我它正在安装 apk(它是),但它没有显示为调试线程并且没有触发断点,尽管服务的行为是就客户看到的而言,还可以。如果我将服务标签包装在具有关联类的活动标签中并启动它,那么我可以对其进行调试。
是否可以在不将服务包装在活动中的情况下对其进行调试?
【问题讨论】:
-
在另一个问题中你说你知道答案。只需自己回答问题,两天后您也可以接受。
标签: android debugging android-service android-manifest