2010-12-13 39 views
11

Ai đó có thể cho tôi một số liên kết/hướng dẫn để sử dụng tệp SQLite được lưu trữ trên thẻ SD không? Không triển khai OpenHandler.Android: sử dụng cơ sở dữ liệu SQLite trên thẻ SD (không sử dụng Kho dữ liệu Android bên trong)

/SD CARD // info.db

Tôi muốn sử dụng một tập tin cơ sở dữ liệu SQLite bên ngoài (không sử dụng Android lưu trữ dữ liệu nội bộ) bởi vì tôi muốn thường xuyên cập nhật các tập tin cơ sở dữ liệu để cung cấp thêm cập nhật thông tin trên info.db.

Cảm ơn bạn.

Trả lời

18

Bạn đã thử sử dụng SQLiteDatabase.openOrCreateDatabase(String, SQLiteDatabase.CursorFactory)? Bạn chỉ có thể vượt qua "/sdcard/info.db" làm tham số thứ nhất và null làm tham số thứ hai.

+4

lời khuyên tốt, nhưng không nên đề cập đến bạn, ít nhất là trong đi qua, những gì sẽ xảy ra khi ứng dụng không thể tải DB vì không được cài đặt không có thẻ SD? - Trong số 2 triệu thứ khác sẽ sai :) – KevinDTimm

+0

Cảm ơn bạn. Tôi phải thử nó. – rvpals

+2

Ồ, điểm tốt! Tôi hoàn toàn quên đề cập rằng thẻ SD có thể không khả dụng. Hoàn hảo mà bạn đã lưu ý vì dự án hiện tại của tôi cũng cần lưu dữ liệu vào một DB SQLite trên thẻ SD (nếu có). – mreichelt

9

Tôi khuyên bạn KHÔNG nên đặt cơ sở dữ liệu trên thẻ SD do sự cố bảo mật một phần (tất cả những người có quyền truy cập vật lý vào thiết bị và thẻ SD, bao gồm tất cả các ứng dụng đang chạy trên thiết bị, cũng sẽ có nhiều hơn hoặc ít quyền truy cập đầy đủ hơn vào tệp cơ sở dữ liệu) nhưng cũng do vấn đề phần cứng (thẻ SD có tuổi thọ giới hạn là tổng số thao tác ghi có thể thực hiện trên đó).

Những câu hỏi này cũng được thảo luận ở đây: SQLite database on SD card

+0

Có thể mã hóa/giải mã db trên sdcard không. Kể từ ngày cần được bảo vệ khỏi các ứng dụng khác. –

+1

Có thể (kỹ thuật) vì cơ sở dữ liệu SQLite là một cơ sở dữ liệu tệp. Tùy thuộc vào việc triển khai, nó có thể ảnh hưởng đến hiệu suất (ví dụ: nếu bạn vì lý do nào đó cần phải giải mã cơ sở dữ liệu cho từng hoạt động đọc). – dbm

+2

đây là những gì im bằng cách sử dụng https://github.com/sqlcipher/android-database-sqlcipher – Dori

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