关于内容提供商机制的几个有趣的问题
内容提供商存储和检索数据并使其可供所有应用程序访问。它们是跨应用程序共享数据的唯一方式;所有Android软件包都无法访问的公共存储区域 http://developer.android.com/guide/topics/providers/content-providers.html
当多个数据表连接在一起时,我们应该为每种数据类型创建单个Provider吗?或者我们可以为所有数据类型使用单一提供者吗?
从远程服务器镜像数据时,是否有与Content Provider相关的常见更新机制,还是我们必须实现某种SyncAdapter?
答案 0 :(得分:1)
我们是否应该使用Content Provider,何时不打算跨应用程序共享数据?
Content Provider是Android提供的优秀功能之一。 使用它在应用程序或应用程序内的活动之间共享数据有助于使代码更清晰,更抽象。
当多个数据表连接在一起时,我们应该为每种数据类型创建单个Provider吗?或者我们可以为所有数据类型使用单一提供者吗?
所有内容提供商都实现了一个通用接口,用于查询提供程序和返回结果 - 以及添加,更改和删除数据。在处理多个数据表时可以使用单一提供程序。使用不同的内容提供商将不必要地产生开销。
答案 1 :(得分:1)
我们是否应该使用Content Provider,何时不打算跨应用程序共享数据?
Content Provider是在应用程序中的应用程序或活动之间共享数据的一个很好的功能。 如果您想为您的应用程序使用内容提供程序而不想共享,那么您可以使用内容提供程序,如果您使用内容提供程序,这是非常好的抽象。
当多个数据表连接在一起时,我们是否应该为其创建单个Provider 每种数据类型,还是我们可以为所有数据类型使用单一提供者?
对于不同的表,我认为你必须创建不同的内容提供者。在Android中,不同的表和数据库有不同的内容提供者。所以你创建的更好 所有表格的单独内容提供商。