ホームページ >バックエンド開発 >Golang >adbでバックアップした.abファイルを解凍してtarパッケージに書き込みたい

adbでバックアップした.abファイルを解凍してtarパッケージに書き込みたい

WBOY
WBOY転載
2024-02-10 08:15:171135ブラウズ

adbでバックアップした.abファイルを解凍してtarパッケージに書き込みたい

php エディタ Zimo は、adb によってバックアップされた .ab ファイルの解凍と tar パッケージへの書き込みに関する質問に答えるのに役立ちます。 adb バックアップは Android システムのバックアップ方法であり、生成されるバックアップ ファイルにはサフィックス名 .ab が付きます。 tarball を解凍して書き込みたい場合は、ADB ツールと tar コマンドを使用して実行できます。まず、ADB コマンドを使用して .ab ファイルを tar パッケージに変換し、次に tar コマンドを使用して tar パッケージを解凍します。この方法で、バックアップ ファイルを tarball に復元できます。この回答がお役に立てば幸いです。

質問内容

以下のように対応させていただきます

リーリー

エラーが発生しました: io.copybackup.ab ->backup.ab.tar が失敗しました: 予期しない eof

.ab ファイルが壊れているか、処理方法が間違っているため、この問題が発生しますか?

解決策

.ab ファイルが破損している可能性があります。

しかし、コードにも問題があります。 .ab ファイルから読み取る場合は、最初の 24 バイトをスキップする必要があります。それ以外の場合は、次のエラーが表示されます: zlib: Invalid header 。別のものが表示されているため、.ab ファイルが破損していると仮定します。

ところで、rd := bufio.newreader(bf) は必要ありません。

これは私に適したデモです:

リーリー

更新:

backup.ab を使用してデモをテストしましたが、エラーは報告されませんでした。しかし、生成された tar ファイルは無効です:

リーリー

zlib-flate を使用してみましたが、同じ結果が得られました: リーリー

試してみました

https://www.php.cn/link/6e67691b60ed3e4a55935261314dd534と同じ結果が得られました。したがって、 a>backup.ab ファイルは破損しているはずです。 リーリー

以上がadbでバックアップした.abファイルを解凍してtarパッケージに書き込みたいの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はstackoverflow.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。