Tôi có một ứng dụng thư viện nơi tôi lưu trữ mỗi cuốn sách như một SqliteDatabase. Tôi lưu tất cả các dbs sách trên sdcard. Câu hỏi của tôi là nếu người dùng gỡ cài đặt ứng dụng của tôi, sau đó thực hiện tất cả các dbs liên quan đến ứng dụng này sẽ bị xóa? Nếu không, làm thế nào tôi có thể đạt được điều này?Việc gỡ cài đặt ứng dụng android có xóa cơ sở dữ liệu được lưu trữ trên sdcard không?
Cảm ơn.
Ok, vậy tôi nên lưu trữ các tệp này ở đâu và ở đâu để tránh các hành vi khó lường như vậy? Nếu được lưu trữ trên bộ nhớ trong thì nó sẽ sớm được lấp đầy và nó bắt đầu cho SqliteFullException. Tùy chọn tốt nhất có thể để lưu trữ số lượng tệp lớn như vậy là gì? – techno
Tôi sử dụng /sdcard/data/com.example.app. Nó nhất quán ở chỗ nó sẽ không bao giờ bị xóa khi gỡ cài đặt hoặc cập nhật. Và nó không phải ở cấp độ gốc nên người dùng sẽ không ghét đống lộn xộn mà nó để lại. Thay vì hardcoding "/ sdcard", hãy sử dụng Environment.getExternalStorageDirectory() và nối thêm/data/và tên gói của bạn. –
Vì vậy, nếu tôi sử dụng /sdcard/data/com.example.app, thì tất cả các dbs sẽ bị xóa khi gỡ cài đặt, đúng không? Ngoài ra, người dùng có thể truy cập các tệp này không? – techno