我已经阅读了 Android 开发指南并注意到我们可以为内容提供者实现不同的类。所以,
- 一个 Android 应用程序中有多个内容提供者还是只有一个内容提供者?
- 如何正确实现这样的不同内容提供者类?
这是我从开发指南中读到的内容:
您将提供程序实现为 Android 应用程序中的一个或多个类
http://developer.android.com/guide/topics/providers/content-provider-creating.html
我已经阅读了 Android 开发指南并注意到我们可以为内容提供者实现不同的类。所以,
这是我从开发指南中读到的内容:
您将提供程序实现为 Android 应用程序中的一个或多个类
http://developer.android.com/guide/topics/providers/content-provider-creating.html
您可以根据需要实现任意数量,正如您从此处的文档中看到的那样。要注册内容提供者,您需要<provider>
在 Android Manifest 中添加其对应的标签。
但是,在大多数情况下,您不需要多个内容提供者。通常一个就足够了,因为它可以处理多个表。如果您希望您的应用程序提供对 2 个以上独立数据实体的公共访问权限,那么您应该只需要一个以上的实体。
我建议你先阅读这些页面。谷歌正在提供更多关于内容提供者、教程和示例的信息:
您可以根据需要在每个应用程序中使用(提供和使用)任意数量的内容提供者。当然,它们需要不同的内容 URI。
除了文档(您的链接)中概述的用途外,您还可以将内容提供者用于访问数据存储的其他目的。内容 URI 可以有参数,因此您可以像使用 Web 服务一样使用内容提供者。
没有规定您必须为每个应用程序仅实现一个内容提供程序。如果您的项目需要,那么您可以这样做。
如果要在应用程序包中实现多个内容提供者,请确保每个内容提供者的权限部分是唯一的,以便将传入的数据请求正确路由到每个内容提供者。
但是拥有太多的内容提供者确实会让你感到困惑并且不是必需的。我看到有多个内容提供者的唯一情况是,如果您的应用程序中有多个数据库,并且您希望与外部应用程序共享所有这些数据库。您可以在其中为每个数据库使用单独的内容提供程序,以便与外界共享。
希望能帮助到你。