【发布时间】:2011-07-05 03:04:26
【问题描述】:
我有一个简单的 Notes 应用程序,它的功能类似于 Android NotePad 示例。一个补充是每个笔记都可以有标签。一个Note 可以有多个Tags,一个Tag 可以属于多个Notes - 因此这是一个多对多的关系。
我已经使用外键和映射表完成了数据库设计。现在,我希望我的应用能够插入 Android 搜索框架,这需要使用 ContentProvider 来公开我的数据。
对于这种情况,是否有任何最佳做法可以遵循?我确实找到了一些关于 SO 的相关问题,但其中大多数涉及一对多关系(例如this one)。我确实从这些问题中得出结论,最好每个 DB 有一个 ContentProvider,然后使用 Matcher 概念来解析 DB 中的多个表。这仍然存在其他问题。
给定一个
Note ID,我想返回与该注释关联的所有标签。对于这种情况,我该如何设置ContentUri?"content://myexample/note/#"和"content://myexample/tag/#"都不能达到目的。我覆盖的 6 个
ContentProvider方法都不适合这样的目的,对吗?我当然可以介绍一种新方法,但我的ContentProvider的消费者不会理解。
提前感谢您的建议。
【问题讨论】:
标签: android many-to-many android-contentprovider