今天繼續講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> 元素的主題提供了這些屬性的完整資料。