我已经读过内容提供商用于与其他应用程序共享数据。
在我的应用程序中,我没有使用内容提供程序,因为我不需要与其他应用程序共享我的数据。所以我一个人使用sqlite数据库。对于底层数据集更改,我使用loadermanager和forceload内容观察器进行即时加载。
这是一种不好的做法吗?所有应用都使用内容提供商吗?此外,我将开发新的应用程序,并且我将使用syncadapter,我应该采用与之前相同的方法,还是需要使用内容提供程序?(记住:在这种情况下我也不想与其他应用分享我的数据)
答案 0 :(得分:0)
如果您不想与其他应用程序共享数据,则并不总是需要内容提供程序,但除了内容提供程序非常有用之外,现在您不需要使用自己的加载程序。除此之外,它还有很多优点,你可以从here阅读不同人的观点。
但在我看来,如果您制作的应用程序可能会随着时间的推移而发展,那么您应该使用Content Provider,因为它可以帮助您在当时完成任务。
答案 1 :(得分:0)
如果您不打算与其他应用程序共享数据,则无需开发自己的提供商。但是,您需要自己的提供商在您自己的应用程序中提供自定义搜索建议。
默认的游标加载器实现需要内容提供程序是一个设计错误。但是,您可以轻松编写your own cursor loader that does not need a content provider。
同步适配器需要内容提供程序是一个设计错误。但是,即使是Android文档本身也会显示如何编写a stub content provider that does not actually do anything。