1、
运行C:\Users\pradmin\AppData\Local\Android\Sdk\tools\monitor.bat,报上面的错
C:\Users\pradmin\AppData\Local\Android\Sdk\tools\bin\archquery.bat
将archquery.bat文件,回显打开
::@if "%DEBUG%" == "" @echo off
再在在终端运行:C:\Users\pradmin\AppData\Local\Android\Sdk\tools>bin\archquery
会打印对应的信息,我的打印下面的信息:
Unsupported major.minor version 52.0
上面说明jdk 配置不对,发现配置的是jdk 1.7 ,将jdk 配置为1.8 就OK 了。
jdk版本对应关系
J2SE 8 = 52,
J2SE 7 = 51,
J2SE 6.0 = 50,
J2SE 5.0 = 49,
JDK 1.4 = 48,
JDK 1.3 = 47,
JDK 1.2 = 46,
JDK 1.1 = 45
2、
当启动monitor.bat
再次启动时,会报错,日志:
ENTRY org.eclipse.osgi 4 0 2017-08-29 15:27:41.441
!MESSAGE Application error
!STACK 1
java.lang.NullPointerException
at org.eclipse.core.runtime.URIUtil.toURI(URIUtil.java:280)
at org.eclipse.e4.ui.internal.workbench.ResourceHandler.loadMostRecentModel(ResourceHandler.java:127)
at org.eclipse.e4.ui.internal.workbench.swt.E4Application.loadApplicationModel(E4Application.java:370)
at org.eclipse.e4.ui.internal.workbench.swt.E4Application.createE4Workbench(E4Application.java:220)
at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:557)
at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:543)
at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149)
at com.android.ide.eclipse.monitor.MonitorApplication.start(MonitorApplication.java:86)
at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:110)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:79)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:353)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:180)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:629)
at org.eclipse.equinox.launcher.Main.basicRun(Main.java:584)
at org.eclipse.equinox.launcher.Main.run(Main.java:1438)
1、Ensure you have no other monitor.exe (if on Windows) or monitor (if
OS X / Linux) process running. If you do, kill it.
2、关闭运行的java,删除 $HOME/.android/monitor-workspace or remove the directory
manually
https://blog.csdn.net/cswhale/article/details/77679623
3、Error obtaining UI hierarchy Error taking device screenshot: EOF
检验一台手机是否开启了View Server的办法为:
adb shell service call window 3
若返回值是:Result: Parcel(00000000 00000000 ‘……..’)” 说明View Server处于关闭状态
若返回值是:Result: Parcel(00000000 00000001 ‘……..’)” 说明View Server处于开启状态
若是一台可以打开View Server的手机(Android开发版手机 、模拟器or 按照本帖步骤给系统打补丁的手机),我们可以使用以下命令打开View Server:
adb shell service call window 1 i32 4939
使用以下命令关闭View Server:
adb shell service call window 2 i32 4939
报Error obtaining UI hierarchy Error taking device screenshot: EOF 这个错,
关闭View Server ,再打开View Server 就OK 了。