Facebook Sonar移動(dòng)應(yīng)用調(diào)試平臺
Sonar 是一個(gè)用于調(diào)試 iOS 和 Android 移動(dòng)應(yīng)用的平臺,通過一個(gè)簡單的界面,開發(fā)者可以可視化地審查和控制其 APP,除了可以直接使用,Sonar 還支持使用插件 API 進(jìn)行擴(kuò)展。
三年前 Facebook 已經(jīng)開源過一款基于 Chrome 開發(fā)者工具的 Android 調(diào)試橋 Stetho,此次發(fā)布的 Sonar 比之更加先進(jìn),主要體現(xiàn)在跨平臺、更豐富的用戶體驗(yàn),以及最主要的可擴(kuò)展性,官方建議開發(fā)者使用 Sonar 替代 Stetho。
Facebook 介紹,Sonar 已經(jīng)被使用于內(nèi)部許多項(xiàng)目中,其中的一些使用樣例包括:
通過顯示 Litho 和 ComponentKit 組件,使工程師能夠更精確地訪問他們正在使用的功能的視圖結(jié)構(gòu)。
處理 GraphQL 請求,而不是原始網(wǎng)絡(luò)事件。
實(shí)時(shí)跟蹤性能指標(biāo),使開發(fā)人員能夠更輕松地查找性能問題。
Sonar 由兩部分組成:桌面客戶端和移動(dòng) SDK。 Sonar 使用者與桌面客戶端進(jìn)行交互,而移動(dòng) SDK 則安裝在工程師想要調(diào)試的 Android 或 iOS 應(yīng)用程序中,之后將數(shù)據(jù)傳輸?shù)?Sonar 桌面客戶端。桌面客戶端基于 Electron 和 Facebook 的開源項(xiàng)目,包括 React.js、Flow、Metro、RSocket 和 Yarn;移動(dòng) SDK 也大量使用 Facebook 的開源項(xiàng)目,如 Folly 和 RSocket。
