Tôi có ứng dụng Ghi chú đơn giản tương tự chức năng cho mẫu Android NotePad. Một bổ sung là mọi ghi chú đều có Thẻ. Một Note
có thể có một số Tag
s và một số Tag
có thể thuộc về một số Note
s - do đó làm cho mối quan hệ nhiều-nhiều này.Nhà cung cấp nội dung Android và mối quan hệ DB nhiều người
Tôi đã hoàn thành thiết kế DB bằng cách sử dụng Khóa ngoại và Bảng ánh xạ. Bây giờ, tôi muốn ứng dụng của tôi cắm vào Khung tìm kiếm của Android, điều này đòi hỏi phải sử dụng một số ContentProvider
để hiển thị dữ liệu của tôi.
Có bất kỳ thực tiễn tốt nhất nào để được theo dõi cho trường hợp này không? Tôi đã tìm thấy một vài câu hỏi liên quan đến SO, nhưng hầu hết trong số họ xử lý các mối quan hệ một-nhiều (ví dụ: this one). Tôi đã kết luận từ những câu hỏi này là tốt nhất nên có một ContentProvider
mỗi DB và sau đó sử dụng khái niệm Đối sánh để giải quyết nhiều bảng trong DB. Điều đó vẫn còn để lại các câu hỏi khác mở ra.
Cho số
Note ID
, tôi muốn trả lại tất cả các thẻ được liên kết với Ghi chú đó. Tôi làm cách nào để thiết lập sốContentUri
cho trường hợp như vậy? Không phải của"content://myexample/note/#"
và"content://myexample/tag/#"
sẽ phục vụ mục đích.Không có phương pháp nào trong số 6
ContentProvider
mà tôi ghi đè sẽ phù hợp với mục đích đó, phải không? Tôi có thể tất nhiên, giới thiệu một phương pháp mới, nhưng điều đó sẽ không được hiểu bởi người tiêu dùng của tôiContentProvider
.
Cảm ơn trước đề xuất của bạn.
Cảm ơn gợi ý về nội dung '": // myexample/note/tag/# "'. Tôi chấp nhận điều này như một câu trả lời vì nó đã giúp tôi trên con đường của tôi. – curioustechizen