Android stdio新版本,DDMS已经作为独立组件,不能在AS中打开了,需要到Android SDK目录下手动运行monitor打开。
macos位于:
/Users/你的用户名/Library/Android/sdk/tools
Win10默认安装的话位于:
C:/Users/你的用户名/AppData/Local/Android/SDK/tools/
但DDMS仅支持JDK8,所以系统中至少要有两套JDK,一套最新的,用以运行新版代码,一套JDK8,用来android调试。
windows平台好解决,再装一套JDK8就行,如果是后装JDK8,不用再配置环境变量,默认JAVA_HOME就是JDK8的,如果要用新的jdk,再去配置一把环境变量即可。
macos我也尝试了一下,折腾的结果还是打开monitor是空白页面,但折腾过程挺有意思,记录一下。
首先macos每次都通过export JAVA_HOME='XXX'来修改JDK版本,略显繁琐,我们可以通过修改系统配置文件的方式来实现简单的命令切换。
参考:https://blog.csdn.net/gljazzgljazz/article/details/99953327作者梵局小镇最后发布于2019-08-21 13:41:24
#编辑配置文件
cd ~/
vi .bash_profile
点击“i”进入编辑模式,往配置文件中写入以下内容:
export JAVA_8_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_181.jdk/Contents/Home
export JAVA_13_HOME=/Library/Java/JavaVirtualMachines/jdk-13.0.2.jdk/Contents/Home
alias jdk8="export JAVA_HOME=$JAVA_8_HOME" #自定义命令,输入则转至jdk1.8
alias jdk13="export JAVA_HOME=$JAVA_13_HOME"
#export JAVA_HOME='/usr/libexec/java_home' #最后安装的版本,这样自动更新时,始终指向最新版本
export JAVA_HOME='/Library/Java/JavaVirtualMachines/jdk-13.0.2.jdk/Contents/Home'
上面有一行注释,因为按照参考文章来配置,平时在shell中输入java会报错,因为shell找不到java命令,所以还是配置成了真实目录。
如果不重启,需要通过source ./bash_profile来使配置生效,这样我们就能在终端中通过jdk8或者jdk13切换JDK版本了。
但问题是,修改了JAVA_HOME,PATH并没有同时更新。也就是说,echo $JAVA_HOME变了,但echo $PATH没有变,导致java -version还是不变,monitor依然报jdk版本错误。
我修改了一下命令:
alias jdk8="export JAVA_HOME=$JAVA_8_HOME\nexport PATH=/Library/Java/JavaVirtualMachines/jdk1.8.0_181.jdk/Contents/Home/bin:$PATH:"
其中第二个export前是一个\n,代表换行
解决了PATH同步更新,我去执行monitor,报错:
./monitor: line 41: /Users/mac/Library/Android/sdk/tools/lib/monitor-: No such file or directory
./monitor: line 41: exec: /Users/mac/Library/Android/sdk/tools/lib/monitor-: cannot execute: No such file or directory
明显是“monitor-”后面应该拼接的字符有问题。查看/Users/mac/Library/Android/sdk/tools/lib/目录,发现monitor-x86_64目录,修改monitor脚本:
#vmarch=`bin/archquery`
vmarch='x86_64'
再次运行monitor,成功启动,但是出于空白页状态:
没辙了,看来以后想用ddms,只能在win10电脑上用了