為什麼要把自己困在小小的手機螢幕上?使用全球第一的Android模擬器BlueStacks,在PC或Mac上運行這款The Source of Code開發的應用JaDec : Java & APK Decompiler,享受極致使用體驗。
其實JaDec這個App,用起來還蠻特別的,真的適合對Android App技術好奇的人。它主要是拿來反編譯APK、JAR、還有DEX這些檔案,可以直接看到裡面的源碼,感覺很像透過一道門直接看到App的結構和資源。一般手機上用也OK,但如果用BlueStacks跑在電腦上,操作空間大一點,瀏覽那些多層目錄或較長的程式檔案時會方便很多。
一開始打開App時,看起來不會很複雜,該有的功能都放得挺直觀。只要選擇裝置裡的APK、JAR還是DEX檔,甚至已經安裝過的App都可以馬上拉出來處理。針對有點技術力的人,這個設計真的省掉不少麻煩。有趣的是,它連預裝在手機的系統App也能反編譯,包含什麼布局、圖片資源、選單、AndroidManifest…這些東西都可以大致瀏覽一下。等於說,對App架構想研究的人來說,這很像一個小型的寶藏盒。
編譯器這邊它支援幾種不同的(像Procyon、Fernflower、CFR、JaDX),感覺就像每個都會還原出略有不同的程式碼,有時候遇到一種解析不順時就可以換另一個試試。這對那些希望看原始碼細節的人來說蠻有彈性的。反編譯後原始碼會自動存到Documents/jadec這個資料夾,要找的話蠻容易,不會搞得亂七八糟。
而且它整個是離線運作的,不用怕資料外流或者被莫名其妙的雲端同步搞混。不會一直跳出連網要求,除非需要自動回報錯誤(這個能關掉),所以自己單純想研究App內容就很安心。操作過程裡,像是開哪些資料夾、切換程式碼頁面等,都有基本的語法高亮、縮放和換行,長碼看的時候眼睛不會太痛。有時候手邊要跟別人分享反編譯到的內容,也有直接儲存和分享的選項,傳給同事或朋友很方便。
這個App本來就設計給一般愛折騰的技術人,所以它介面也支援深色模式,看順眼一點,長時間用程式檢視不至於讓人抓狂。值得一提的是,它可以在背景待機,偶爾切去做別的事情再回來看也沒問題,不用一直重頭載入。
還有就是相關許可權的部份,只會要用到外部儲存(為了要存反編譯下來的原始檔)跟網路(必要時回報錯誤),不會像某些工具亂要一大堆奇怪權限。對技術人來說,這種乾淨簡單蠻重要的。
最終還是要提醒,它其實是給想要深入研究App結構的人用的,不是用來破解或做什麼不該做的行為。用在自己的App或學習解構的範圍,還是很實用的。總之,整體來說JaDec在PC上用起來很順,尤其開著BlueStacks畫面大一點,資料夾和原始碼切來切去也流暢,不論學習、測試還是純粹好奇都挺方便,介面不花俏但實用性高。不會一下子給人壓力,就是個可以安心慢慢研究App的小工具。
BlueStacks可以讓你在更大的螢幕上自由體驗你最的應用。立即下載吧。