Can't seem to launch Layout Inspector on Android Studio 3.0 (Canary 3)
When connected to my device and app running, choosing Tools > Android > Layout Inspector comes up with the following error dialog:
"Error obtaining view hierarchy: Unexpected error: empty view hierarchy"
Any setup I'm missing? I have Developer Options enabled on the device.
In general I've this behavior when something is "moving" in the view so the layout inspector cannot retrieve a simple layout, that's why pausing a video will work but if you have something more complex like camera preview or Google Map is harder, not sure how to work around this
If you have ViewTreeObserver
in your code to measure a view's width/height, and you're changing some width/height/padding/etc. according to a result you are getting from addOnPreDrawListener
of ViewTreeObserver;
Just comment inside onPreDraw
or comment all code related to ViewTreeObserver
.
I can't launch my hierarchy viewer while playing video. Once I pause the video, it works!
This could be related to your Android version. For example, in my case, this error occurs on Genymotion on Android 4. After moving to Android 5 this error gone.
In my case, I had two devices connected to add, one device and an emulator. And I had to make sure only one device is connected. Then it worked. I was on Android Studio 3.2 Canary.
What I tried and did NOT work:
- kill adb process and tried it again
- clearing cache and restart
- uninstalling the app, cleaning the build and building it again
- disconnect the device and plug it back in
Finally I managed to solve it by turning off developer options and then turning it on + enable usb debugging.
Had same problem on Android Studio v2.3.3, problem was related to CountDownTimer Object, somehow it cause problem (probably because of onTick method).
After commenting it, I could normally use Layout Inspector.
Maybe you use something similar in your code, try to comment it out and see if if works.
Had the same problem.
Could not capture hierarchy on Emulator.
I used a real device and it worked fine.
I changed my device from a Nexus 6 to a Pixel XL. Then it worked.
So try and change your device and see if that fixes the issue.