Почему hierarchyviewer не работает для Samsung Galaxy TAB 7.0?
я использовал hierarachyviewer ранее, но на эмуляторе android. Он работает абсолютно нормально, когда я использую его на эмуляторе. Однако он не работает с Samsung Galaxy TAB 7.0, с Android 2.3.4.
Это журнал, который я получаю
11:04:22 E/hierarchyviewer: Unable to get view server version from device 303599
64881B00EC
11:04:22 E/hierarchyviewer: Unable to get view server protocol version from devi
ce 30359964881B00EC
11:04:24 E/hierarchyviewer: Unable to debug device 30359964881B00EC
11:05:05 E/hierarchyviewer: Unable to get view server version from device 303599
64881B00EC
11:05:05 E/hierarchyviewer: Unable to get view server protocol version from devi
ce 30359964881B00EC
11:05:07 E/hierarchyviewer: Unable to debug device 30359964881B00EC
11:09:38 E/hierarchyviewer: Unable to get view server version from device 303599
64881B00EC
11:09:38 E/hierarchyviewer: Unable to get view server protocol version from devi
ce 30359964881B00EC
11:09:40 E/hierarchyviewer: Unable to debug device 30359964881B00EC
Я также не использовать hierarchyviewer в режиме отладки, просто запустив приложение. Спасибо.
7 ответов:
Я нашел обходной путь: https://github.com/romainguy/ViewServer
ViewServer-это простой класс, который вы можете использовать в своем приложении Android для использования инструмента проверки HierarchyViewer...
- убедитесь, что вам нужна эта библиотека(новые версии Android не)
Если вам нужна эта библиотека, то следуйте этим инструкциям:
- включить библиотеку ViewServer (легко направления найдены здесь)
- ваше приложение должно требовать разрешения на доступ в интернет
рекомендуемый способ использования этого API-это регистрация действий при их создании и отмена регистрации при их уничтожении:
public class MyActivity extends Activity { public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); // Set content view, etc. ViewServer.get(this).addWindow(this); } public void onDestroy() { super.onDestroy(); ViewServer.get(this).removeWindow(this); } public void onResume() { super.onResume(); ViewServer.get(this).setFocusedWindow(this); } }
пожалуйста, обратитесь к документации в ViewServer.Java для получения дополнительной информации...
вместо этого используйте инструмент monitor-tool (
android-sdk/tools/monitor
).подключение к устройству. Закройте Eclipse, если вы не можете подключиться.
нажмите "Просмотр иерархии сброса для кнопки пользовательского интерфейса автоматизаторов" в устройства "-вкладка". Его один рядом с кнопкой захвата экрана.
работает с уровня API 16 (Android 4.1).
вы можете использовать только HierarachyViewer на эмуляторе и специальных телефонах разработчика, купленных у google.
http://groups.google.com/group/android-developers/browse_thread/thread/b0b0af7a316ca768
цитата из ссылки выше
HierarchyViewer не работает на пользовательских сборках (т. е. с устройствами доступно в магазинах.) Это из соображений безопасности. Если HiearchyViewer смог работать над пользовательскими сборками, любым приложением на вашем настольный или даже по телефону в некоторых случаях) потенциально может получить доступ к личную информацию (например, логины и пароли.)
Я решил вопрос в max os
Это решение ANDROID_HVPROTO описано здесь:
http://developer.android.com/tools/performance/hierarchy-viewer/setup.html
затем попробуйте закрыть Android Studio
запустите ADB kill-server, adb start-server
и запустить монитор работы для меня!
ответ :
https://github.com/romainguy/ViewServer/issues/14#issuecomment-75354479
ответ @ ozodrukh полезен.
почти никакие телефоны общего производства не позволят HierarchyViewer получить к ним доступ. Обычно телефоны разработчиков и эмуляторы являются единственными с этими функциями.
аналогичная проблема у меня была на 4.1 телефон.Используйте ViewServer в коде.
перед проверкой в Hierarchy viewer, просто перезапустите adb server один раз, делая.
официальные документы:оптимизация пользовательского интерфейса сказал так:
чтобы сохранить безопасность, Hierarchy Viewer может подключаться только к устройствам под управлением версии разработчика системы Android.