「ADB Backup」を介して行われたフルバックアップからアプリのデータを抽出するにはどうすればよいですか。 - backup フィールド と adb フィールド と restore フィールド android 関連 問題

How do you extract an apps data from a full backup made through adb backup












135
vote

問題

日本語

私はすべてのファイルを暗号化されたバックアップにバックアップするために、 99887766654431 で私のNexus 7をバックアップしています。 9988877665544332 でバックアップから復元できるのですが、それはデバイス上のすべての既存のデータを拭きます。

この暗号化バックアップファイルから1つのアプリのデータを抽出する方法は?

        
     

回答リスト

127
 
vote
vote
ベストアンサー
 

ABファイルの抽出方法

<で書かれたApache 2.0ライセンスの下にあるOpen Source Project があります。 href = "http://nelenkov.blogspot.com/" rel = "nofollow noreferrer"> nikolay elenkov tarファイルに.abを抽出することができます。

使用:

<事前> <コード> bash0

背景

他の人の参考のために、ここに.abファイル形式のいくつかの背景があります。

Android Backup(* .ab)ファイルは圧縮されている tar ファイル。 deflate アルゴリズムを使用して圧縮されます。その上には、 aes暗号化が使用できます。これは、パスワードを入力した場合、バックアップを作成するときに決定されます。その場合、その他のバックアップは暗号化されます。暗号化はありません、それは圧縮されています。

ファイルのヘッダーは、通常のデフレートアーカイブとは少し異なります。バックアップに関する情報が含まれており、次のようになります。

<事前> <コード> bash1

最初の行は "magic"行。次の行は、Androidバックアップファイル形式のバージョンです。次の行は、ファイルが圧縮されているかどうかを示すブール値(trueまたはfalse、1または0)です。最後の行は暗号化の種類です。この例は暗号化を使用していません。パスワードがあった場合、線は「AES-256」を読みます。その後暗号化暗号です。パスワードがない場合は、「アーカイブ」の定義が始まります。

Java Deflater 。 Developersの観点からは、Javaのほかにそれを抽出する以外に何かを使用したい場合に問題が発生します。私が見つかった(C#のように)が見つかったすべてのものが「spec」に従うことになっていても、同じアルゴリズムを使ってそれを定義できるものを見つけることができなかったことはありません。

本当に使用する方法(この回答の範囲を超えています) Droid Explorer < / a> v0.8.8.7( my blog (はい、私は知っています、恥知らずのプラグ。私はそれが質問に合うときにそうします)

unpack

 
 
         
104
 
vote

または1リネラと:

<事前> <コード> bash2
 
 
         
35
 
vote

もう1つのオプションは、<コード> 99887766544333 、<コード>および<コード>および<コード>(<コード> 998876665544335 (<コード> 998876666654336 )を使用することです。

フルプロセスはこれになる可能性があります(無写釈のバックアップ):

  1. バックアップ1つのアプリのデータ(例えば " "):

    <事前> <コード> $ adb backup -f net.mx17.overridedns.ab -noapk net.mx17.overridedns Now unlock your device and confirm the backup operation.
  2. 圧縮データを抽出する

     <コード> $ dd if=net.mx17.overridedns.ab bs=1 skip=24 > compressed-data 1285+0 records in 1285+0 records out 1285 bytes (1,3 kB) copied, 0,00745877 s, 172 kB/s   
  3. 圧縮データを解凍する

    <事前> <コード> bash9
  4. "untar" tarファイル

    <事前> <コード> bash10
 
 
     
5
 
vote

他の情報に基づいて、この情報に基づいて、バックアップファイルが単なるプレフィックスされた偏向(GZIP)ストリームであることを知っています。この単純なプログラムはあなたのためにそれを解凍することができます:

<事前> <コード> PATH0

上記のUNIXツールを持っていないため、これを書きました。また、Cygwinやその他のツールをインストールすることが簡単でした。

利点

  • クロスプラットフォーム
  • 単純(難解なパラメータなし)
  • 配管ツールを必要としない

短所

  • JDK(Android SDKでめちゃくちゃ)
  • を備えているため、あなたがすでに持っている可能性があります。
  • 暗号化バックアップのサポートなし
  • 結果のtarファイルを抽出するために何かが必要です(Total Commanderを使用)

コマンドラインツールに作成するための<コード> 998877666544331 <コード>とディレクトリへの 99887766666644333

 
 
5
 
vote

暗黙の問題も、単一のアプリデータを復元する方法、このNIFTYスクリプトを言及します。これは、single-app.abファイルで指定されたfull-backup.abを分割します。

https://sourceforge.net/projects/adb-split/

jarファイルを必要とします:abe.jarとtar-bin-split.jar それはここで見つけることができます:

  • https://sourceforge.net/projects/adbextractor/files/
  • https://sourceforge.net/projects/tar-binary-splittter/ファイル/

少なくとも私のテストケースには機能しました。

 
 
4
 
vote

別のオプションは、このXDAスレッド。これらの要件はいくつかありますが、明らかに、<コード>、<コード>、および<コード>、および<コード>、<コード>、および<コード>(バックアップが暗号化されていない場合は、スキップすることができます。 9988776666664337 の行103を単にコメントすることによる最後の依存関係 - それが含まれている - 私には大丈夫です)。

使用量は非常に簡単です:

 <コード> ./backupdecrypt.pl [options] <backupfile.ab> <outfile.tar>   

結果の<コード> 99887766544339 ファイルは、他のタールボールのように調べることができます。その構造は少なくとも1つの側面では非常に興味があります。ファイルが取られた実際のパスを反映していません(たとえば、 9988876666543310 、代わりに 99887666654443311 ) - 99887766655443312 は実際のパス自体を把握しなければならないので、1つのDEVICE / ROM でAPPバックアップを行うことを示します。 P>

 
 
   
2
 
vote

別のオプションを追加するには、ヘッダー操作のWindows PowerShellバージョンがあります。

 <コード> PATH13  

現在のWindows 10バージョン17063以降でファイルを抽出するには、現在のWindows 10のバージョンでTAR実行可能ファイルを使用してください。ただし、現在、このプロセスで作成された誤ったファイルとLinuxバージョンを処理していないようです。 YMMV:

 <コード> unab.bat4  

全内容を取得するには手動で7zipまたは類似して抽出できます。 あるいは、答えの1つからhref="https://stackoverflow.com/questions/38776137/-PowerShell"> https://stackoverflow.com/questions/38776137/NATIONS -TAR抽出インダウエルヘル

 
 
1
 
vote

他の回答に追加するために、i がNelenkovのアプリを使用してそれを手に入れた( https://github.com/nelenkov/android-backup-extractor )および説明: https://forum.xda-developers.com/showthread.php?t=2011811 。私はJava用の追加の800MBのディスク容量を避けようとしていました。ほとんどの電話はデフォルトで暗号化されているために移動しており、Nelenkovのアプリは暗号化された唯一の解決策であると思います。

これはNelenkovのコンパイル済みJARリリースへの直接リンクです。その最新情報: https://github.com/ Nelenkov / Android-Backup-eXtractor /リリース/タグ/ 20181012025725-D750899

は上記のリンクから次の指示に従います。 Heliumについての詳細は、abファイルを個々のアプリファイルに入れることができます。また、rootなしでADBバックアップを使用するように設定されていないアプリを変更する方法。このリリースファイルを使用している場合は、を置き換えます。

1)元のADBバックアップをtar形式に変換:

<コード> HDD1

2)TARアーカイブの内容を抽出します。これはAで行われるべきです タール内のファイルのアクセス許可があるファイルシステム たとえば、Linux、Mac、BSDを使用して保存されます。 5月までの5月 出現、アプリ、共有:

<コード> tar -xvf nexus7.tar

今すぐあなたは新しいフォルダを探すべきです。今すぐあなたはどちらのアプリをバックアップし、どちらがどちらになったかを確認できます。

BTW、IZZYの答えは良い( https://android.stackexchange.com/a/42224/95893 )しかし、彼のスクリプトには複数のPerlモジュールがインストールされる必要があります、3番目の私は見つけることができませんでした。彼のアプリはフル機能ですが、Adebar-Master / Tools / ToolsのADB2TARを見つけました。繰り返しますが、暗号化されたABファイルでは機能しません。

 
 

関連する質問

0  私が私の電話を変更するとき、私はドリームリーグサッカー2018と私のプレーヤーの購入ですべての私のゲームの進歩を続けることができるでしょうか?どうやって?  ( When i change my phone will i be able to keep all my game progress in dream lea ) 
私の電話を変更するとき、私はドリームリーグサッカー2018と私のプレーヤーの購入ですべての私のゲームの進歩を続けることができるでしょうか?もしそうなら、どのように? ...

24  最初のオープニングGoogle Playで停止した後、アプリの復元を再開する方法?  ( How to resume app restore after stopping it on first opening google play ) 
私はGalaxy NexusのGoogleサイトから新鮮なストックROMをインストールしました。 Google Playを開き、157のアプリのインストールを開始しました...問題は、WiFiのカバレッジなしでエリアに移動する必要があるように途中でダウンロー...

0  Whatsappチャットとデータを復元します  ( Restore whatsapp chat and data ) 
最近、私のXperia Z2を点滅させた後、点滅する前に電話機の内部メモリのバックアップを取得し、WhatsAppデータが自動的に復元されるという印象を持っています。しかし、フラッシュプロセスが完了した後、もう一度WhatsAppをインストールした後、以前のメ...

0  私のAndroid携帯電話からEメールを引き出すことはできますか?  ( Can i pull the emails off my android phone ) 
最近、私のラップトップコンピュータのすべてのEメールを失いました。そして彼らは重要なビジネスメールでした。それらのEメールの多くはまだ私のAndroid携帯電話に存在します。私はそれらすべてを転送できることを知っていますが、それは多くの時間がかかります、そして...

73  Androidデバイスをバックアップする方法  ( How to backup an android device ) 
誰かがAndroidデバイスをバックアップするための良い方法をお勧めしますか? 理想的にはこれをワイヤレスでやりたい、そして私のデータをバックアップするだけでなく、私のユーザー設定もしたいと思います。 Androidデバイスのイメージをバックアップすることは可...

3  私の古いiPhoneから私の新しいAndroid携帯にSMSメッセージを転送する方法は?  ( How can i transfer sms messages from my old iphone to my new android phone ) 
私の前のSMSはiTunesのどこかに保存されていると思います。 ...

8  Nandroid Imageの一部のみを復元します  ( Restore only part of nandroid image ) 
2.2をインストールしようとしています。私の連絡先をすべて削除しました(連絡先が電話で保存され、Googleの連絡先としては保存されました) 私は完全に完了しました nandroid バックアップ中は、携帯電話中にそれらの連絡先がありました。ただし、画像を復...

5  ROMバックアップを復元します  ( Restore a rom back up ) 
私は今夜私の携帯電話にシアノーゲン銃を試すつもりです。しかし、私がそうする前に、私は一つのことについて興味があります。私はこのサイトで受け取った1命令(Bryanに感謝します)、そして私のすべてのアプリケーションとデータのチタニウムのバックアップを行ったNAN...

6  電話機間のアプリケーションのコピー?  ( Copying applications between phones ) 
電話機間でアプリケーションを簡単にコピーすることは可能ですか(例えば、Bluetoothを介して2つのHTCS)、それらを元気に実行しますか?または、ダウンロード後に右に来るインストールルーチンのために、たびにAMからダウンロードする必要があります。 ...

3  Android携帯電話が失われた、私は新しい電話に乗ることができますか?  ( Android phone lost what data can i get onto new phone ) 
不器用な質問についてすみません。 私のAndroid HTC Magicは昨夜失われました。ロック解除スワイプコード、電源投入SIMコードを持っていて、電話会社と呼ばれ、ブロックされていたので、他の人が使用している電話自体が使用されていません。 私が考えている...




© 2022 cndgn.com All Rights Reserved. Q&Aハウス 全著作権所有