2013-01-11 75 views
-1

前段時間我上傳到谷歌玩我的家庭餐廳的應用程序,就像顯示菜單,時間表,價格..所有東西。它仍然在谷歌播放,我可以通過谷歌開發人員訪問它,但問題是,我失去了所有的代碼。從apk中恢復文件谷歌播放

有什麼方法恢復數據來添加一些新的信息,然後更新我的應用程序?

非常感謝。

+0

除非您有發佈密鑰的備份副本,您將無法在Google Play中更新您的應用。您將不得不使用不同的軟件包名稱重新發布它。 – iagreen

回答

2

你需要一個植根設備這樣的:

安裝應用程序到您的設備,然後用取APK關閉的裝置:

  1. 將您的「深耕」的Android設備進入您的電腦通過附帶的USB電纜。
  2. 從您的ADB命令行(通常C:\android-sdk-windows\tools\)型adb shell,然後按回車
  3. 切換到root用戶,鍵入su,然後按回車
  4. 鍵入「cd data/app中」,然後按回車
  5. 列出所有已安裝的APK文件類型ls,然後按回車(找到你要提取的一個)
  6. 在另一個命令窗口,拉動到您的計算機中的一個文件通過鍵入: adb pull /data/app/application.apk name.apk,然後按回車

一旦你有了apk,將它重命名爲whatever.zip並將其解壓縮爲zip文件。您現在將看到一堆文件夾。您資產文件夾中的任何內容都可立即恢復。對於java代碼,您必須使用dex2jarclasses.dex轉換爲.jar文件。之後,您可以使用JD-GUI從.jar文件讀取代碼。

要提取的AndroidManifest.xml,一切都在res文件夾(佈局XML文件,圖像等),你必須使用APKTool 運行以下命令:

apktool.bat d sampleApp.apk 

它還提取所有的.smali文件。類文件,但這些文件很難閱讀,您應該使用dex2jar代碼。

+0

@iagreen我去了,並檢查,但我似乎無法找到下載apks的選項。 –

+0

你說得對,我以爲它曾經在那裏。我的錯。 刪除了錯誤信息! – iagreen

+0

讓我們來看看它是否有效 – Aldridge1991

1

如果您在生成APK文件時使用progaurd來強制代碼,那麼它是不可能的。

如果沒有,你可以反編譯的類一定程度上做一些改變,以反編譯的類,你可以得到它的工作......很少有反編譯APJK文件

感謝工具,

+0

即使它被混淆了,他也可以通過查看大部分邏輯等。畢竟,他寫了原始代碼。 –

+0

是的,代碼非常非常簡單,但花了很長時間...這就是爲什麼我試圖這樣做,而不是重新做它。謝謝大家,配偶! – Aldridge1991

相關問題