能力值:
( LV4,RANK:50 )
|
-
-
2 楼
adb forward tcp:8899 jdwp:进程ID 怎么没这句呢
|
能力值:
( LV2,RANK:10 )
|
-
-
3 楼
-----------adb forward tcp:8899 jdwp:进程ID 怎么没这句呢
这句啥意思?从帖子中 http://bbs.pediy.com/showthread.php?t=178659 。没看到啊。
|
能力值:
( LV12,RANK:270 )
|
-
-
4 楼
无输出才是正常的。你IDA把进程挂起了啊。IDA里面点Continue process就行了
|
能力值:
( LV2,RANK:10 )
|
-
-
5 楼
问下 ,你们调试都是用真的手机调试吗?还是用bs?
|
能力值:
( LV2,RANK:10 )
|
-
-
6 楼
我的做法是用DDMS(adt bundle/android sdk中tools資料夾下開monitor)
查看想要attach的process ID所開出的port(應該會在DDMS的Devices視窗中)
用:
jdb -connect com.sun.jdi.SocketAttach:port=8616,hostname=localhost //(windows下)
來解除wait for debugger(執行jdb後回ida 按F9來continue),此步我沒有使用adb forward。
在做這步前,
在adb shell裡執行起android_server並forward他給的port(如adb forward tcp:23946 tcp:23946),
並於ida中debugger attach起想要用的process。
給樓主作參考 希望能幫到大家!
|
能力值:
( LV2,RANK:10 )
|
-
-
7 楼
输入jdb -connect com.sun.jdi.SocketAttach:hostname=127.0.0.1,port=8700出现「致命错误,无法附加到指定VM」这个问题我也遇到了;
我发现:
如果你找到了地址(基址+偏移)然后G到地址,下断点
F9运行,
执行jdb -connect com.sun.jdi.SocketAttach:hostname=127.0.0.1,port=8700
断下,进行调试,
这样就会出现这个问题,而如果你在第一步不下断点就F9执行,则可以attach上,但是寄存器中的内容是错误的。
至今也不知道为什么别人能成功。。。据说IDA6.6是可以不计算地址直接G到函数名字然后dump的,IDA6.5无能为力。LZ若知道了还请通知一声。
|
能力值:
( LV5,RANK:60 )
|
-
-
8 楼
你可以使用eclipse的远程调度功能去附加呀,不需要使用jdb去附加的。
jdb老出问题。
在Eclipse的Java视图的菜单中Run->Debug Configurations,
点击左边的Remote Java Application下的任何一个项目,进行远程调试的Connect tab,按上面修改设置,把Project改为调试项目,Host改为localhost,Port改为调试端口(8600或8700什么的)。之后,点【debug】。
|
能力值:
( LV2,RANK:10 )
|
-
-
9 楼
可是调试的项目不在Eclipse里啊 没有源码
|
能力值:
( LV5,RANK:60 )
|
-
-
10 楼
不需要源码也能attach的呀,有源码只是多了一个编译执行的功能而已。
|
能力值:
( LV12,RANK:1000 )
|
-
-
11 楼
aliEvilAPK_4这个程序怎样才能运行?真机和虚拟机都奔溃
|
能力值:
( LV2,RANK:10 )
|
-
-
12 楼
楼主,我试了很久发现以下方法可行:
在输入jdb -connect....之前先输入adb forward tcp:8899 jdwp:<pid>
然后再jdb -connect com.sun.jdi.SocketAttach:port=8600,hostname=127.0.0.1,注意是8600/8700中的8600,就可以成功附加了,你可以试试。进程的pid可以在logcat中找到。
用 forward jdwp:<pid> 端口映射信息来连接指定的JDWP进程.但我不知道为什么是8899端口。
|
能力值:
( LV3,RANK:20 )
|
-
-
13 楼
遇到和楼主同样的问题
|
能力值:
( LV9,RANK:160 )
|
-
-
14 楼
@非洲大表哥
然后再jdb -connect com.sun.jdi.SocketAttach:port=8600,hostname=127.0.0.1,注意是8600/8700中的8600,就可以成功附加了,你可以试试。进程的pid可以在logcat中找到。
你的答案是正确的。今天上午我调了一上午,我一直以为是自己的步骤错了。看了你的回答,才调通,在此感谢
|
能力值:
( LV8,RANK:130 )
|
-
-
15 楼
我也碰到这么奇怪的情况,后来发现,原来忘记加上android:debuggable="true",狂晕啊!!!!!!!!!!!!!!!!!
|
|
|