Content provider provides data from one application to another on their requests. These requests for data are handled by classes extending contentresolver class. Data in contentresolver class can be saved in various ways like in Database, Files, or even over Network.
![](http://findnerd.s3.amazonaws.com/imagedata/8662/8662.jpg)
Content providers helps in centralization of data at one place and letting other apps use it when they require. ContentProvider works similar to databases where we can insert, update delete, query for data, It allows other apps to perform these queries.
Now Let's Start with the code:-
Following are the steps to create a content provider:-
1. Create a class that extends ContentProvider class.
- When you will extend this class, Some methods you will need to override.
- Eg. onCreate(), delete(), getType(), insert(), query(), update().
2. You will need to handle all your queries in these methods only.
3. Declare content provider inside your manifest.
4. Add permissions inside your manifest for the content provider.
5. Provide the permission to the client app.
<permission android:name="com.tag.custom_contentproviderdemo.READ_DATABASE" android:protectionLevel="normal" />
<permission android:name="com.tag.custom_contentproviderdemo.WRITE_DATABASE" android:protectionLevel="normal" />
<provider
android:name="com.tag.custom_contentproviderdemo.PlatesContentProvider"
android:authorities="com.tag.custom_contentproviderdemo.Plates"
android:exported="true"
android:readPermission="com.tag.custom_contentproviderdemo.READ_DATABASE"
android:writePermission="com.tag.custom_contentproviderdemo.WRITE_DATABASE">
</provider>
Output:
![](https://raw.githubusercontent.com/amitrai98/custom-content-provider-android-master/master/provider.gif)
A link for the above tutorial is available on this link. If you have any questions, please feel free to ask in comments.
0 Comment(s)