2011年4月26日 星期二

不要小看華人呀,Android App 的逆向工程!

Standard
還記得在某次的 COSCUP 與 Google 的龐教授,交流了一些 Android 方面的意見。由於他專精於 Compiler,我們也對 Dalvik Virtual Machine 的部份有些許的討論。當時感到非常榮幸,也覺得驕傲,因為這樣發光於全球的 Project ,也有華人在其中,更難得的是就在眼前。

最近空閒時間在研究一些 Android 的實作,煩腦之際,於 Google Code 發現了一個對岸朋友針對 apk 的逆向工程研究,有對 Dalvik VM 做了一系列的研究和說明,並開發了一支 apk 反組譯工具 [dex2jar]。如其名,該工具能將 DEX(Android apk 的格式)還原成 Java class 檔案,但更有趣的是,反向工程後的結果,不單只是 Binary 或 Bytecode,而是有『相當完整』的 Java 原始程式碼。

此外,在該 Project 的 Wiki 上,作者用『中文』記載了 [dex2jar] 的設計細節和反向工程所遭遇的問題,並寫了相應的解決手段,對技術有興趣的人可以去看看。 :-P

後記

如同該 Project 首頁所標註,還是請玩家在把玩這支程式時要『遵循 Google 相關協議與相關法律法規』。