2011-12-30 60 views
1

我正在使用最新版本的android maven插件。我使用android:deploy和android:run在我的设备上启动我的应用程序。当我想调试时,我在eclipse中进入DDMS并检查我的应用程序的绿色错误图标。一切工作正常......但我只能调试一个正在运行的应用程序,即它已经开始。如果我在应用程序构造函数或onCreate中放置断点,它不会停止(显然是因为应用程序已启动并且调试尚未激活......)。使用android maven插件调试应用程序启动

所以我的问题是:如何直接从maven以调试模式启动我的应用程序,就像我为从eclipse启动的应用程序所做的那样?

感谢提前

+0

您是否使用文档(http://code.google.com/p/maven-android-plugin/wiki/Debug)中提供的建议来确认您的Eclipse设置? – 2011-12-30 12:09:07

+0

是的,先生!这是我在我的问题的第一部分描述的。它在文档中运行得很好。但不是在启动! – Gomoku7 2012-01-15 22:22:38

回答

4

感谢Lukasz,我在Idea中找到了启动该命令以触发调试模式的命令。 基本上,应用程序部署与android:部署,而不是android:run,我用-D启动shell“am”命令。以下是有兴趣的人的用法。

ovh-ybi$ adb shell 
# am 
usage: am [subcommand] [options] 

start an Activity: am start [-D] <INTENT> 
    -D: enable debugging 

send a broadcast Intent: am broadcast <INTENT> 

start an Instrumentation: am instrument [flags] <COMPONENT> 
    -r: print raw results (otherwise decode REPORT_KEY_STREAMRESULT) 
    -e <NAME> <VALUE>: set argument <NAME> to <VALUE> 
    -p <FILE>: write profiling data to <FILE> 
    -w: wait for instrumentation to finish before returning 

start profiling: am profile <PROCESS> start <FILE> 
stop profiling: am profile <PROCESS> stop 

<INTENT> specifications include these flags: 
    [-a <ACTION>] [-d <DATA_URI>] [-t <MIME_TYPE>] 
    [-c <CATEGORY> [-c <CATEGORY>] ...] 
    [-e|--es <EXTRA_KEY> <EXTRA_STRING_VALUE> ...] 
    [--ez <EXTRA_KEY> <EXTRA_BOOLEAN_VALUE> ...] 
    [-e|--ei <EXTRA_KEY> <EXTRA_INT_VALUE> ...] 
    [-n <COMPONENT>] [-f <FLAGS>] [<URI>] 
-1

相反的android:部署和android:运行,你可以仅仅通过月食,而不是由行家在启动调试应用程序。你必须正确配置你的项目才能做到这一点。

+0

感谢您的回答。这有点难以实现,因为Maven和Eclipse看不到相同的东西。我花了一个小时。这意味着也会失去maven的依赖系统,并在日食中变得糟糕。主要问题:eclipse尝试插入一个带有javax的libs到apk ...和dalvik dosnt。为什么eclipse会这样做?不知道?哪里?不知道.. – Gomoku7 2012-02-02 10:03:01

+1

我使用的是Idea而不是Eclipse。也许你可以试试这个?我们在Eclipse中的项目不断崩溃。正因为如此,我不得不使用我的设备,它的速度更快:我点击ddms中的调试或启动应用程序。在想法中,大部分时间都可以。我可以从Idea的调试模式启动应用程序 – 2012-02-09 12:46:36

+0

我安装了Idea只是为了尝试它,它给了我想要的信息。谢谢卢卡斯。见下面的答案。 – Gomoku7 2012-02-09 18:53:13

-1

您可以使用this post部署并启动它。调试我猜,并希望你只需要改变一些参数。

+0

这很有趣,谢谢。但我没有找到任何方式来激活调试。在文档中没有这样做的参数。 – Gomoku7 2012-02-02 10:10:24

+0

但这里是文件。我认为你需要指定一个端口,并将调试器附加到它http://code.google.com/p/maven-android-plugin/wiki/Debug – Karussell 2012-02-03 20:26:16

+0

那么...这是目前我正在做的事情。如果您仔细阅读,您会看到该应用程序已启动(点2),并且仅在调试开始后(点5)。我想要的是当应用程序启动时,调试已经开始在同一时间。 – Gomoku7 2012-02-05 10:05:11

相关问题