Box 黑科技 —— 支持手機端反編譯 !

項目地址: Boxandroid

文末掃碼獲取最新安裝包 。git

前言

有將近一個月沒有更新文章了,一方面在啃 AOSP ,消化起來確實比較慢。在閱讀的過程當中,有時候上來就會陷入源碼細節,其實這是沒有必要的。剛開始更多的應該從總體脈絡上去理解,摸清整個流程以後再去有針對性的看某些細節,纔會事半功倍。下一篇應該會帶來 Activity 啓動流程分析github

除了啃 AOSP 以外,剩下的時間都花在了開源項目的維護和更新上。一個是 Wanandroid 應用,主要技術棧是 Kotlin 、 MMVM 、 協程 ,開源了一段時間,一度以爲本身的 MVVM 寫的還不錯。在閱讀相關架構文章以及 Google 重構了 plaid 以後,發現了本身的框架在 分離關注點 方面存在的一些問題。主要針對架構方面作了一些調整,目前來看仍是比較符合 MVVM 的思想的。另外,也新增了網頁版的新功能 「廣場」。微信

說一說 Wanandroid 後續的更新計劃,第一點,Jetpack 的深anzhuangb入使用。包括 Navigation 單 Activity 實現,Room ,Page 等類庫的使用。第二點,完成一個 Jetpack Compse 版本,雖然 Compose 仍是預覽版,但我堅決看好 Compose,實在忍不住不去嘗試一下,其實也已經在開發中了,完成了一些簡單頁面,有在學習 Compose 的朋友能夠交流交流,項目地址在這裏 -》 Wanandroid-Compose架構

Box V0.2.0

另外一個開源項目就是今天要說的 Box 了,說來慚愧,已經好幾個月沒有更新了。此次帶來了一個 "黑科技",對,沒錯,就是堪比 小米手機八項黑科技手機端反編譯 功能。熟悉反編譯的同窗應該對這個功能很熟悉,但都是在 PC 上操做的,ApktoolJadx 等開源工具都提供了 PC 端的命令行操做或者圖形界面。其實第一次看到手機端反編譯功能是在 Trinea 的 Android 開發助手 上,當時感受挺驚豔的,也比較好奇是如何實現的。anzhuangbapp

其實很簡單,Apktool 和 Jadx 都是開源的,移植到 Android 上就能夠了。大體瀏覽了一下 Jadx 源碼,就開始了移植工做。鑑於 Jadx 源碼的優秀設計,整個移植過程也沒有費太大功夫。結合 Android 開發助手的 UI 設計,不難看出 Trinea 也是移植了 Jadx 源碼。 box_app_managerbox_app_manager 下面的 gif 簡單展現了反編譯功能的使用:框架

nager

除此以外,針對以前的 當前 Activity 功能作了一些完善,主要替換了懸浮窗的依賴庫,如今使用的是 EasyFloat。這是一個 Kotlin 版本,且更加穩定。下面也用一個 gif 演示一下該功能:工具

另外,在更新 AndroidUtilCodeKTX 的文件工具類部分時,爲了能總結的儘可能完整,就在 Box 裏面增長了 文件管理 功能,界面相對簡陋,但功能還算完整,後續會繼續完善,你們能夠提提 issue 。post

針對 應用管理 功能,新增了對本地安裝包文件的支持。無需安裝也能直接查看各類應用信息。關於其中一個查看 AndroidManifest.xml 文件的功能,建議閱讀 Android逆向筆記 —— AndroidManifest.xml 文件格式解析學習

最後

若是你有新奇的想法和功能,歡迎前來交流。

添加個人微信,加入技術交流羣。

公衆號後臺回覆 「Box」, 獲取最新安裝包。

相關文章
相關標籤/搜索