2012-05-07 91 views
1

我和我的同事正在編寫和android應用程序,我們正在使用git來跟蹤代碼更改。 在最後拉到我身邊後,我改變了許多代碼行並插入了很多新代碼。反編譯APK使用簽名的密鑰庫

在試圖推動這些變化時,出現了一些衝突,我得到了他的版本,並且我的項目已經消失。

「幸運的是,」我的手機上安裝的應用程序的最新版本以及用於在我的電腦上簽名的密鑰庫。

有什麼方法可以使用簽名密鑰庫來反編譯.apk文件嗎?

回答

3

實際上,沒有。雖然可以反編譯一個apk,但這個過程會產生足夠的難度,以至於恢復它的時間可能會過長。您可以使用baksamali (link)反彙編它,以及類似的工具,從.class文件反編譯爲Java文件。然而,不幸的是,編譯過程失去了足夠的上下文,您可能會在文件中丟失大量結構,並且在沒有很多平滑處理的情況下得到的結果將不可行。在這種情況下,儘管在技術上可能是,但它可能需要對反編譯生成的反編譯代碼所用的時間量足夠高,以至於您寧願自己重新編碼。

+0

這是偉大的,絕對不是我期待的答案。爲了防止有人有更好的解決方案,我會等待一段時間再接受你的答案。 – dxjankov

+0

這與任何反編譯過程相同:編譯器會拋棄所有註釋,臨時變量名稱,內聯事物(有時,我不認爲java編譯器會這樣做),並且通常希望將事情從反編譯中解放出來是一個真正的痛苦,這是非常有用的,否則軟件盜版將更加普遍 –

+0

我明白,但是當我離開我的房子並鎖上門時,我希望能夠在我回來時解鎖它。 – dxjankov