运行程序,设置远程调试项目
设置AndroidStudio为远程调试模式
按下面的步骤操作,将AndroidStudio运行模式设置为远程调试模式。
1.打开Edit Configurations..
2.在出现的界面,点击左上角的“+”,在出现的下拉列表中再点击“Remote”
3.设置远程调试的名称和监听远程的端口
在图中1处修改远程调试的名称,不修改直接用默认的也行。在2处修改远程调试服务端监听的端口,一般设置为“8700”,当然也可以设置成当前调试项目所在的端口,可以在“Monitor”工具中查看项目所在的端口。
可以看到当前调试的项目有两个远程服务端端口,“8700”端口是每个调试程序默认的远程端口,如果不想每次运行程序都重新设置一下端口,2处设置成“8700”就行了,然后点击OK完成修改。这时你会发现可运行的程序中多出了一个你刚才设置的调试项目名称。
如上图,这里我直接使用默认的调试名称,则可运行的项目中多出了一个“Unnamed”选项,我们选中这个就行了,这时Android Studio就在“8700”端口监听项目的运行了。
以调试模式运行并将进程映射到8700端口
- 用am命令,使目标程序以调试模式运行。
- 将进程映射到“8700”端口,使用以下命令
adb forward tcp:8700 jdwp:进程id
进程id可以在“Monitor”工具中查看,如下图
也可以运行adb命令查看,用adb命令查看进程id的命令如下
adb shell ps | grep 包名
完成了以上两步,接着在AndroidStudio点击Debug选项,如下图
然后就可以打断点调试项目了。
注:在点击Debug选项运行项目之前,需要先将“Monitor”工具关掉,否则会提示8700端口被占用,无法进行动态调试项目。
结束语
动态调试步骤是有点复杂,其实熟悉之后就没多大感觉了,简单设置几下就行了。可能有的手机不能root,这时就只能修改“AndroidManifest.xml”文件了,修改之后不用在程序的启动界面添加代码也行,只要以am命令运行程序就行了。
相关文章: