Hanya untuk referensi orang lain, berikut adalah beberapa latar belakang pada format file .ab.
File Android Backup (* .ab) adalah file TAR terkompresi . Itu dikompresi menggunakan algoritma DEFLATE . Selain itu, ada enkripsi AES yang digunakan. Ini ditentukan saat Anda membuat cadangan, jika Anda memasukkan kata sandi maka cadangan dienkripsi, jika tidak; tidak ada enkripsi, hanya dikompresi.
HEADER file sedikit berbeda dari arsip DEFLATE normal. Ini berisi informasi tentang cadangan dan terlihat seperti berikut:
ANDROID BACKUP
1
1
none
Baris pertama adalah baris "Magic" . Baris berikutnya adalah versi format file Android Backup. Baris berikutnya adalah boolean (benar atau salah, 1 atau 0) yang menunjukkan apakah file dikompresi. Baris terakhir adalah jenis enkripsi. Contoh ini tidak menggunakan enkripsi apa pun. Jika ada kata sandi, baris itu akan bertuliskan "AES-256". Setelah itu adalah enkripsi cipher. Jika tidak ada kata sandi, maka DEFLATE "arsip" dimulai.
Itu dikompresi menggunakan Java Deflater . Yang, dari perspektif pengembang, menyebabkan masalah jika Anda ingin menggunakan apa pun selain Java untuk mengekstraknya. Saya belum dapat menemukan apa pun yang dapat mengempiskannya menggunakan algoritma yang sama, meskipun semua yang saya temukan (untuk seperti C #) seharusnya mengikuti "SPEC".
Dengan itu, ada proyek open source di bawah lisensi Apache 2.0, ditulis oleh Nikolay Elenkov yang akan memungkinkan Anda untuk mengekstrak .ab ke file tar.
Pemakaian:
java -jar abe.jar unpack <backup.ab> <backup.tar> <password>
Jika Anda tidak yakin bagaimana cara menggunakannya (yang berada di luar cakupan jawaban ini), versi Droid Explorer v0.8.8.7 berikutnya ( tersedia di sini ) akan memungkinkan Anda untuk melakukan hal ini, dan banyak lagi, langsung dari Explorer. Anda dapat membaca lebih lanjut tentang fitur di blog saya (ya, saya tahu, plug tak tahu malu. Saya melakukan itu ketika itu cocok dengan pertanyaan)