2010-01-12 44 views
5

1) Ứng dụng Android của chúng tôi sẽ lưu trữ dữ liệu trong một DB SQLite tích hợp.Bộ nhớ trong của Android - giới hạn là gì?

Tôi thấy DB có thể ném android.database.sqlite.SQLiteFullException, nhưng không có thông tin chính xác trong API giới hạn là gì.

Có ai cho biết giới hạn kích thước cho một DB để không tham gia vào SQLiteFullException không?

Tôi cho rằng DB sẽ lưu trữ dữ liệu trong bộ nhớ trong của thiết bị (so với SDCard). Tôi có đúng không? Với SQLite DB chỉ là một tệp, có thể kích thước DB bị giới hạn với dung lượng lưu trữ nội bộ miễn phí. Một lần nữa - Tôi có đúng không? Nếu có, thì kích thước lưu trữ nội bộ trên Android là bao nhiêu? Làm thế nào để phát hiện nó? Nó có thay đổi trên cơ sở mô hình thiết bị hoặc cơ sở phiên bản hệ điều hành không?


2) Chúng tôi cũng sẽ cần lưu cài đặt ứng dụng. Tôi nghĩ rằng SharedPreferences sẽ phù hợp độc đáo. Tuy nhiên, câu hỏi là - SharedPreferences có được lưu vào bộ nhớ trong không? Nếu có, thì đó có phải là cùng một lưu trữ nơi DB lưu trữ tệp của nó không?

Cảm ơn trước!

+0

Vì vậy, bất kỳ cách nào để tìm giới hạn hoặc kích thước của SQLite DB. Hoặc bất kỳ cách nào để tìm cơ sở dữ liệu hiện trạng ghi? Hoặc xử lý ngoại lệ là cách duy nhất? – Pritam

+0

Chúng tôi đang thực hiện nó thông qua xử lý các ngoại lệ (thậm chí không thử các cách khác). –

Trả lời

7

Tôi giả định DB sẽ lưu trữ dữ liệu trong bộ nhớ trong của thiết bị (so với SDCard). Tôi có đúng không?

Theo mặc định, có.

Cho SQLite DB chỉ là một tệp, có thể kích thước DB bị giới hạn với dung lượng lưu trữ nội bộ miễn phí. Một lần nữa - Tôi có đúng không?

Đó sẽ là dự đoán của tôi.

Điều này có khác nhau trên cơ sở mẫu thiết bị hoặc cơ sở phiên bản hệ điều hành?

Trên cơ sở mô hình thiết bị.

là SharedPreferences cũng được lưu vào bộ nhớ trong?

Có.

Nếu có, thì đó có phải là cùng một lưu trữ trong đó DB lưu trữ tệp của nó không?

Có.

Các vấn đề liên quan