今天继续讲android的ContentProvider,ContentProvider是四大组件之一,需要在AndroidManifest.xml中声明<provider>,今天讲下<provider>的属性。
以下是android developer官网的讲解:
<Provider> 元素
与 Activity 和 Service 组件类似,必须使用 <provider> 元素在清单文件中为其应用定义 ContentProvider 的子类。 Android 系统会从该元素获取以下信息:
授权 (android:authorities)
用于在系统内标识整个提供程序的符号名称。设计内容 URI 部分对此属性做了更详尽的描述。
提供程序类名 ( android:name )
实现 ContentProvider 的类。实现 ContentProvider 类中对此类做了更详尽的描述。
权限
指定其他应用访问提供程序的数据所必须具备权限的属性:
- android:grantUriPermssions:临时权限标志
- android:permission:统一提供程序范围读取/写入权限
- android:readPermission:提供程序范围读取权限
- android:writePermission:提供程序范围写入权限
实现内容提供程序权限部分对权限及其对应属性做了更详尽的描述。
启动和控制属性
这些属性决定 Android 系统如何以及何时启动提供程序、提供程序的进程特性以及其他运行时设置:
- android:enabled:允许系统启动提供程序的标志。
- android:exported:允许其他应用使用此提供程序的标志。
- android:initOrder:此提供程序相对于同一进程中其他提供程序的启动顺序。
- android:multiProcess:允许系统在与调用客户端相同的进程中启动提供程序的标志。
- android:process:应在其中运行提供程序的进程的名称。
- android:syncable:指示提供程序的数据将与服务器上的数据同步的标志。
开发指南中针对 <provider> 元素的主题提供了这些属性的完整资料。
信息属性
提供程序的可选图标和标签:
- android:icon:包含提供程序图标的可绘制对象资源。 该图标出现在Settings > Apps > All 中应用列表内的提供程序标签旁;
- android:label:描述提供程序和/或其数据的信息标签。 该标签出现在Settings > Apps > All中的应用列表内。
开发指南中针对 <provider> 元素的主题提供了这些属性的完整资料。