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

項目地址: Box

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

前言

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

除了啃 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 開發助手 上,當時感覺挺驚豔的,也比較好奇是如何實現的。anzhuangb

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

nager

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

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

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

最後

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

添加我的微信,加入技術交流羣。

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

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章