Pencadangan / pemulihan ADB individu secara berurutan tanpa diminta


8

Saya sedang mencari cara melakukan batch cadangan melalui perintah adb backup / restore individu (untuk memiliki file .ab terpisah per paket / aplikasi / data / dll.) (Saya mengetahui aplikasi desktop Helium (Carbon) sebagai opsi untuk ini - akan tertarik untuk menulis skrip saya sendiri untuk bersenang-senang).

Alasan ingin membuat file .ab individu vs yang besar adalah saya ingin dapat memiliki fungsi backup / restore parsial hanya untuk paket individual, dan tidak harus melakukan, misalnya, 50 aplikasi sekaligus.

Kendala utama saat ini adalah bahwa setiap kali backup / restore terjadi, input pengguna harus diberikan ketika prompt muncul - apakah ada cara di sekitar ini untuk dapat menggunakan adb backup / restore untuk beberapa paket individu melalui sesuatu seperti skrip shell?

Terima kasih!

Jawaban:


2

Anda dapat mencoba menggunakan di adb shell input tap <x> <y>mana x dan y adalah koordinat tempat Anda ingin mengetuk layar (dapat menampilkan coords di Opsi Pengembang). Saya dapat menggunakan kode ini untuk memulihkan cadangan individu:

#$1 is backup file

adb restore ${1} &
sleep 2
adb shell input touchscreen tap <x> <y>
wait

Saya menemukan itu berguna untuk tidur selama beberapa detik setelah perintah restore, tetapi mungkin tidak perlu.


1

Jadi, akan tampak bahwa tidak ada built in dan (setidaknya tampaknya) cara yang dimaksudkan untuk kita lakukan ini.

Sebagai gantinya, ini dimungkinkan melalui adb shell sendeventperintah - ini dapat mengemulasi input sentuh dari komputer dengan alat adb (dan driver yang relevan) diinstal, asalkan ponsel telah menyediakan akses adb ke mesin tertentu.

Acara dapat direkam menggunakan adb shell geteventdan diputar ulang dengan adb shell sendevent. Seorang pengguna kemudian dapat merekam menekan tombol penerimaan, dan menyimpan skrip yang memutar ulang mereka. Tentu saja, ini memperkenalkan masalah seperti ketika ada overlay layar (misalnya dari aplikasi lampu shift merah) mencegah penekanan tombol, jika sesuatu yang lain muncul (mungkin gelembung obrolan, dll.), Dan sejumlah penghalang lainnya, jadi solusi terbaik.


0

ini tampaknya sangat aneh, tetapi dengan cara yang jahat google diharapkan. Dari pemahaman saya sendiri yang tidak lengkap tetapi semakin berkembang - Anda dapat mengonversi file pemulihan ke file tar dengan mengubah 24 byte pertama. Jadi pertanyaannya adalah, akankah ekstraksi tar sederhana dengan cara tertentu (remounting sesuatu atau rw lainnya sementara?) Melakukan hal yang sama dengan adb restore lakukan? Tentu saja sumbernya secara teoritis ada di sana. Saya berencana untuk mencoba berbagai hal pada akhirnya dan melihat apakah mereka tampaknya bekerja cukup baik untuk membenarkan tidak cukup peduli untuk menggali melalui sumber itu. Ya, ini adalah jawaban yang sangat jelek, tetapi tampaknya bermanfaat sebagai pengganti sampai skrip shell adb kecil dengan inv tarage atau sejenisnya menggantikannya, yang saya anggap sebagai penanya asli dan saya ingin melihatnya.

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.