2015-03-02 54 views
0

是否可以將java反編譯器設置爲返回在此過程中找到的所有內容?我有一款遊戲,一年多來我一直在努力,我對Java仍然很陌生,一直在用我的頭來對抗鍵盤和API文檔來製作這款遊戲​​。我出差回家,發現我的房子被闖入,我的工作站不在了。我仍然有我的密鑰存儲庫,因爲我爲了安全而將其保存在閃存驅動器上。我還將我的項目文件保存在閃存驅動器上,在我離開之前,我並未從工作站上刪除項目文件。我試圖使用每個可以找到的.apk反編譯器來恢復我的源代碼。他們都返回一些代碼,但當然因爲proguard幾乎所有的代碼都是不可用的。爲了測試目的,我在手機上籤了一份我的簽名.apk文件,它是可調試的,有沒有辦法從中恢復我的所有項目文件?像設置java反編譯器非常詳細,或不同的設置,如果反編譯器認爲它是relavent,將產生每個文件的1:1副本reguardless?是否可以將java反編譯器設置爲非常詳細的

編輯:我已經使用了dj java反編譯器,androchef反編譯器和反編譯器@ www.decompileandroid.com,它只是一個腳本,運行在他們的服務器上,使用eclipse adt包中包含的標準工具來開發android應用程序。

+0

似乎像proguard正在做它的工作。在未來,您可能需要考慮爲重要文件進行異地備份。我在便宜的虛擬主機上使用自己的雲實例。 – Philipp 2015-03-02 14:51:08

+0

這似乎是一個相當廣泛的問題。 *您指的是哪一個反編譯器? – 2015-03-02 14:53:03

+0

我編輯了我的帖子以反映附加信息。 – 2015-03-02 15:46:23

回答

0

我曾經爲一個愛好去混淆Java應用程序,並且曾經在幾個反編譯器上工作過,所以如果你把它發給我,我可能會有幫助。

這就是說,有些東西根本不可能修復。你永遠不會找回編譯好的apk中不存在的任何東西,因爲不可能恢復那些不存在的信息。除其他外,這包括註釋,原始源代碼格式和編譯時註釋。混淆步驟也會去掉類名,變量名,未使用的方法等。

另一個要嘗試的是看看是否有任何可能的方式讓apk的非混淆版本存活。你有沒有在其他地方上傳過你的文件?

+0

不幸的是,沒有我從來沒有加載任何其他地方比閃存驅動器,我曾經把項目文件加載到我的手機,我從現在開始做,我只是不想使用的空間,當然我想我的家是安全的,因爲這是我日常職業生涯中一個未知的項目。遊戲商店中有一個名爲「Show Java」的應用程序,它看起來有着相當不錯的成功率,從我看到的返回代碼中可以看出,有沒有像Windows這樣的東西?我寧願重新輸入所有400,000行代碼,然後重新開始。 – 2015-03-03 00:40:02

+0

我並不熟悉Show Java的具體內容。很可能它只是前面提到的各種Java反編譯器之一。如果該應用程序沒有太糟糕的混淆,我建議嘗試dex2jar + Procyon。如果應用程序確實具有良好的模糊性,那麼沒有什麼事情可以很好地工作,但我可以看一看,看看我可以做什麼,如果你想。 – Antimony 2015-03-03 04:10:13

相關問題