-1

少し前に、ファミリーレストランのメニュー、時刻表、価格などを表示するようなアプリをグーグルプレイにアップロードしました。それはまだグーグルプレイにあり、グーグル開発者がアクセスできますが、問題はすべてのコードを失ったことです.

データを回復して新しい情報を追加し、アプリを更新する方法はありますか?

本当にありがとうございました。

4

2 に答える 2

2

これには、root化されたデバイスが必要です。

アプリをデバイスにインストールしてから、次を使用してデバイスからapkを削除します。

  1. 付属のUSBケーブルを介して「ルート化された」Androidデバイスをコンピューターに接続します。
  2. adbコマンドラインから(通常はC:\android-sdk-windows\tools\adb shell入力してEnterキーを押します
  3. rootユーザーに切り替え、su入力してEnterキーを押します
  4. 「cddata/app」と入力し、Enterキーを押します
  5. インストールされているすべてのapkファイルを一覧表示し、ls入力してEnterキーを押します(抽出するものを見つけます)
  6. 別のコマンドウィンドウで、次のように入力してファイルの1つをコンピューターにプルします。Enterキー adb pull /data/app/application.apk name.apkを押します。

apkを入手したら、名前をに変更してwhatever.zipzipファイルとして解凍します。これで、たくさんのフォルダが表示されます。アセットフォルダ内のすべてのものをすぐに復元できます。Javaコードの場合、ファイルに変換するにはdex2jarを使用する必要があります。その後、JD-GUIを使用して.jarファイルからコードを読み取ることができます。classes.dex.jar

AndroidManifest.xmlおよびresフォルダー内のすべて(レイアウトxmlファイル、画像など)を抽出するには、APKToolを使用する必要があります。 次のコマンドを実行します。

apktool.bat d sampleApp.apk

また、すべての.classファイルの.smaliファイルを抽出しますが、これらは読みにくいため、代わりにdex2jarのコードを使用する必要があります。

于 2013-01-11T20:59:51.513 に答える
1

APK ファイルの生成中に progaurd を使用してコードを難読化する場合、それは不可能です。

そうでない場合は、クラスをある程度逆コンパイルし、逆コンパイルされたクラスにいくつかの変更を加えて、それを機能させることができます... APJKファイルを逆コンパイルするツールはほとんどありません

ありがとう、

于 2013-01-11T21:05:23.667 に答える