หากอุปกรณ์ของคุณใช้ Android v4 ขึ้นไปคุณสามารถดึงข้อมูลแอพรวมถึงฐานข้อมูลได้โดยไม่ต้องรูทโดยใช้adb backup
คำสั่งจากนั้นแตกไฟล์สำรองและเข้าถึงฐานข้อมูล sqlite
ขั้นแรกสำรองข้อมูลแอพไปยังพีซีของคุณผ่านสาย USB ด้วยคำสั่งต่อไปนี้แทนที่app.package.name
ด้วยชื่อแพ็คเกจจริงของแอปพลิเคชัน
adb backup -f ~/data.ab -noapk app.package.name
ระบบจะแจ้งให้คุณ "ปลดล็อกอุปกรณ์และยืนยันการสำรองข้อมูล" อย่าระบุรหัสผ่านสำหรับการเข้ารหัสสำรองดังนั้นคุณสามารถแยกได้ในภายหลัง คลิกที่ปุ่ม "สำรองข้อมูลของฉัน" บนอุปกรณ์ของคุณ หน้าจอจะแสดงชื่อแพ็กเกจที่คุณกำลังสำรองข้อมูลจากนั้นจะปิดเองเมื่อดำเนินการสำเร็จ
data.ab
ไฟล์ผลลัพธ์ในโฟลเดอร์บ้านของคุณมีข้อมูลแอปพลิเคชันในรูปแบบการสำรองข้อมูลของ Android ในการแตกไฟล์ให้ใช้คำสั่งต่อไปนี้:
dd if=data.ab bs=1 skip=24 | openssl zlib -d | tar -xvf -
หากข้างต้นลงเอยด้วยopenssl:Error: 'zlib' is an invalid command.
ข้อผิดพลาดให้ลองด้านล่าง
dd if=data.ab bs=1 skip=24 | python -c "import zlib,sys;sys.stdout.write(zlib.decompress(sys.stdin.read()))" | tar -xvf -
ผลลัพธ์คือapps/app.package.name/
โฟลเดอร์ที่มีข้อมูลแอปพลิเคชันรวมถึงฐานข้อมูล sqlite
สำหรับรายละเอียดเพิ่มเติมคุณสามารถตรวจสอบโพสต์บล็อกเดิม