Làm cách nào để kéo cơ sở dữ liệu sqlite từ thiết bị Android như trình giả lập?Làm cách nào để kéo cơ sở dữ liệu sqlite từ thiết bị Android?
Trả lời
- kết nối điện thoại với pc
- mở dấu nhắc lệnh trong
/sdk-directory/tools
- loại
adb pull /data/data/com.example.app/databases/database.db
nơi com.example.app
là tên gói ứng dụng của bạn và database.db
là file cơ sở dữ liệu
đó là trong trường hợp thiết bị của bạn đã được root, nếu không thử theo dõi
Nếu bạn sử dụng nhật thực thì hãy chuyển đến chế độ xem DDMS. từ File Explorer Tab -> đĩa dữ liệu> đĩa dữ liệu> gói ứng dụng name> databases-> tên databse
chọn tập tin cơ sở dữ liệu db sau đó nhấn nút kéo
Ở thiết bị bình thường, bạn thậm chí không thể mở thư mục dữ liệu. –
tùy thuộc vào thiết bị của bạn. –
Bạn có thể sử dụng các lệnh này cho kéo cơ sở dữ liệu từ bạn thiết bị. Gõ các lệnh này thông qua android studio là rất dễ dàng. Hãy chắc chắn rằng bạn đã đặt đường dẫn adb trên toàn cầu vào hệ thống của bạn. Sau đó, mở cửa sổ "terminal" từ dưới lên android studio và gần "Android Monitor". Bây giờ bạn chỉ cần cập nhật các lệnh sau với tên gói thực của tên ứng dụng và tên tệp cơ sở dữ liệu của bạn. Bạn sẽ lấy tệp ra khỏi thiết bị.
adb shell "run-as package.name chmod 666 /data/data/package.name/databases/file"
adb pull /data/data/package.name/databases/file .
adb shell "run-as package.name chmod 600 /data/data/package.name/databases/file"
lệnh dành cho Android 5.0+ /data/data/package.name/databases/file sẽ là:
adb shell "run-as package.name chmod 666 /data/data/package.name/databases/file"
adb exec-out run-as package.name cat databases/file > newOutFileName
adb shell "run-as package.name chmod 600 /data/data/package.name/databases/file"
Tuyệt vời. Cảm ơn thông tin này. –
supern .. thank yu –
Hoàn hảo. Nếu bạn muốn kiểm tra thư mục dữ liệu trước, hãy xem bài đăng này: http: // stackoverflow.com/questions/9017073/is-it-possible-to-see-application-data-từ-adb-shell-the-same-way-i-see-it-moun – shadowhorst
Cách tốt nhất để xem và quản lý cơ sở dữ liệu bạn ứng dụng Android là sử dụng này thư viện https://github.com/sanathp/DatabaseManager_For_Android
Tệp hoạt động java đơn lẻ của nó, chỉ cần thêm tệp java vào thư mục nguồn của bạn, bạn có thể xem các bảng trong cơ sở dữ liệu ứng dụng, cập nhật, xóa, chèn hàng vào bảng.
Khi quá trình phát triển hoàn tất, hãy xóa tệp java khỏi thư mục src của bạn.
Nó đã giúp tôi rất nhiều. Hy vọng nó cũng giúp bạn.
Bạn có thể xem demo 1 phút ở đây: http://youtu.be/P5vpaGoBlBY
adb root
adb remount
adb pull <remote> <local>
Tôi biết đây là một câu hỏi cũ, tuy nhiên điều này là những gì tôi đã làm để kéo các tập tin cơ sở dữ liệu SQLite từ ứng dụng trên thiết bị.
- Tiết kiệm các tập tin từ gói ứng dụng để sdcard thiết bị
adb -d shell "run-as com.dautechnology.abdimuna.smartparking cat /data/data/<myAppPackageName>/databases/<databaseFileName> > /sdcard/<databaseFileName>"
Lệnh trên sẽ lưu trữ tập tin vào/sdcard Bạn có thể xác minh các tập tin bằng cách adb shell ls sdcard/
Sau đó thoát khỏi adb shell bằng cách nhập exit
- Kéo thứ e tập tin từ sdcard đến vị trí làm việc hiện tại của bạn.
adb pull sdcard/<databaseFileName>
3. Di chuyển tệp vào Máy tính để bàn hoặc địa điểm mong muốn của bạn.
mv <databseFileName> ~/Desktop
Tôi hy vọng điều này sẽ giúp ai đó ở ngoài đó.
Do chương trình khác trong ứng dụng
try {
File file = Environment.getExternalStorageDirectory();
File data = Environment.getDataDirectory();
if (file.canWrite()) {
String currentPath = "/data/data/" + getPackageName() + "/databases/yourdbname";
String copyPath = "copydb_name.db";
File currentDB = new File(currentPath);
File backupDB = new File(file, copyPath);
if (currentDB.exists()) {
FileChannel src = new FileInputStream(currentDB).getChannel();
FileChannel dst = new FileOutputStream(backupDB).getChannel();
dst.transferFrom(src, 0, src.size());
src.close();
dst.close();
}
}
} catch (Exception e) {
}
Hãy chắc chắn rằng được phép cúp
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
Bạn có thể bỏ qua tất cả những giai đoạn giữa với một lệnh.
Trong máy tính của bạn chạy shell:
adb -d shell 'run-as <package_name> cat /data/data/<package_name>/databases/<db_name>' > <local_file_name>
Bạn có thể sử dụng màn hình thiết bị Android để kéo nó. Chuyển đến Công cụ -> Android -> Trình giám sát thiết bị Android
- Chọn thiết bị của bạn từ danh sách bên trái.
- Chọn FileExplorer tab
- Mở rộng đĩa dữ liệu> Xóa dữ liệu -> "yourpackageName" -> cơ sở dữ liệu
- Chọn databaseFile của bạn và trên đầu trang bấm chuột phải vào biểu tượng này kéo một tập tin hình thành một thiết bị.
- Lưu nó trên bàn của bạn sau đó sử dụng công cụ này để mở nó: http://sqlitebrowser.org/
từ phiên bản 24 trở đi tôi sử dụng các lệnh này để kéo cơ sở dữ liệu
adb shell
run-as package.name
cat /databases/database.db > /sdcard/database.db
exit
exit
adb pull /sdcard/database.db
trước khi phiên bản 24
adb pull /data/data/package name/databases/database.db
đủ
- 1. Làm cách nào để tải xuống cơ sở dữ liệu SQLite từ thiết bị Android?
- 2. cơ sở dữ liệu Android SQLite bị hỏng
- 3. Truy cập cơ sở dữ liệu sqlite trên thiết bị Android
- 4. Lỗi khi tách cơ sở dữ liệu SQLite - cơ sở dữ liệu bị khóa
- 5. Truy cập cơ sở dữ liệu SQLite từ dòng lệnh
- 6. Làm thế nào để chèn dữ liệu vào cơ sở dữ liệu SQLite trong android?
- 7. Android ExpandableListView và cơ sở dữ liệu SQLite
- 8. Làm thế nào để lưu trữ dữ liệu từ cơ sở dữ liệu edittext đến android sqlite?
- 9. Làm thế nào để đọc dữ liệu từ cơ sở dữ liệu SQLite?
- 10. Android - Đâu là cơ sở dữ liệu SQLite lưu trữ
- 11. Android duyệt cơ sở dữ liệu SQLite trên điện thoại
- 12. Một công cụ phát triển để thiết kế cơ sở dữ liệu SQLite cho Android
- 13. Android đổi tên Cơ sở dữ liệu SQLite
- 14. onUpgrade() cơ sở dữ liệu sqlite trong Android
- 15. Làm cách nào để nhập bảng từ cơ sở dữ liệu khác trong sqlite?
- 16. Cơ sở dữ liệu Flushing và SQLite trên android
- 17. Làm cách nào để chuyển một thiết bị thử nghiệm cơ sở dữ liệu sang thiết bị từ ứng dụng thử nghiệm đơn vị của tôi
- 18. Android: SQLite sử dụng cơ sở dữ liệu sai
- 19. Làm cách nào để tạo cơ sở dữ liệu SQLite trong Android bằng cách nhập từ tệp SQL?
- 20. Lược đồ cơ sở dữ liệu Sqlite của Android
- 21. đồng bộ hóa cơ sở dữ liệu sqlite android
- 22. Chèn mảng trong cơ sở dữ liệu SQLite trong android
- 23. Tạo bảng trong cơ sở dữ liệu sqlite trên android
- 24. Cơ sở dữ liệu SQLite của Android: chèn chậm
- 25. Cách thay thế tệp cơ sở dữ liệu sqlite hiện có bằng tệp cơ sở dữ liệu mới trong android
- 26. Nhận tối thiểu từ cột cơ sở dữ liệu SQLite?
- 27. Nhận boolean từ cơ sở dữ liệu bằng cách sử dụng Android và SQLite
- 28. Làm thế nào để thêm hai cột mới vào cơ sở dữ liệu SQLite của Android?
- 29. SQLite: cơ sở dữ liệu chỉ đọc
- 30. Đề xuất mẫu thiết kế cho văn bản cho cơ sở dữ liệu SQLite trong Android
thi s làm việc nhưng các tập tin kéo không hiển thị bất kỳ bảng. – Andrain