国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 系統 > Android > 正文

Android如何在root設備上開啟ViewServer詳解

2019-10-22 18:20:04
字體:
來源:轉載
供稿:網友

前言

關于什么是Hierarchy Viewer,請查看官方文檔:http://developer.android.com/tools/debugging/debugging-ui.html。

個人理解:Hierarchy Viewer能獲得當前手機實時的UI信息,給界面設計人員和自動化測試人員帶來極大的便利。

Hierarchy Viewer 工具提供了一個可視化界面顯示布局的層次結構,讓我們可以進行調試,從而優化界面布局結構,它需要手機開啟 ViewServer 配合使用

但是在真機上并不能使用,Android的官方文檔中提到:出于安全考慮,Hierarchy Viewer只能連接Android開發版手機或者模擬器

在代碼中是在 WindowManagerService.java 類中做的限制,如下

private static final String SYSTEM_SECURE = "ro.secure";private static final String SYSTEM_DEBUGGABLE = "ro.debuggable";public boolean startViewServer(int port) { if (isSystemSecure()) { // 判斷系統是否是安全的  return false; } // ...  try {  mViewServer = new ViewServer(this, port);  return mViewServer.start(); } catch (IOException e) {  Slog.w(TAG_WM, "View server did not start"); } return false;}private boolean isSystemSecure() { return "1".equals(SystemProperties.get(SYSTEM_SECURE, "1")) &&   "0".equals(SystemProperties.get(SYSTEM_DEBUGGABLE, "0"));}

可以看到,在 isSystemSecure() 函數中,判斷了 ro.secure 和 ro.debuggable 的值

所以我們的思路就是

使 SystemProperties.get(SYSTEM_SECURE, "1") 返回 0

或者 SystemProperties.get(SYSTEM_DEBUGGABLE, "0") 返回 1

即可達到目的

這兩個屬性被定義在 /default.prop 文件中,每次系統啟動會被加載到內存中,之前看過一些修改 system 的方法,不過需要刷機,風險比較大,今天偶然返現一個工具 mprop

這個工具可以修改內存中一些屬性的值,但是在手機重啟后需要重新修改,不過這都是小事

依照工具內給定的步驟修改了 ro.debuggable 的值為 1 ,然后使用下面的命令

# 判斷手機是否開啟了view server,如果沒開啟則開啟adb shell service call window 3 # 返回 Result: Parcel(00000000 00000001 '........') 開啟# 返回 Result: Parcel(00000000 00000000 '........') 關閉# 開啟 ViewServeradb shell service call window 1 i32 4939# 關閉 ViewServeradb shell service call window 2 i32 4939

機型:一加2 氧OS 6.0.1 ,其他不同型號不同系統需自行測試,不保證成功

總結

以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作具有一定的參考學習價值,如果有疑問大家可以留言交流,謝謝大家對VEVB武林網的支持


注:相關教程知識閱讀請移步到Android開發頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 龙门县| 梅州市| 城固县| 涪陵区| 盐城市| 资阳市| 泰州市| 安义县| 修水县| 钦州市| 叶城县| 山东| 台湾省| 南投市| 岳阳县| 安阳市| 巩留县| 东山县| 尚志市| 皋兰县| 诏安县| 班戈县| 青龙| 张家口市| 巴中市| 普安县| 城固县| 都江堰市| 武安市| 舒兰市| 文水县| 宁城县| 金乡县| 富川| 虹口区| 天津市| 东乌| 新巴尔虎左旗| 淮滨县| 内江市| 德阳市|