文章出处:http://blog.youkuaiyun.com/scarthr/article/details/41951101
今天我们来学习我个人认为Android核心组件最复杂的一个——ContentProvider。
一 ContentProvider的用法
由于ContentProvider的用法是比较复杂的,我们这里就只介绍用ContentProvider来查询Android系统数据的例子。接下来我们学习一下如何使用ContentProvider来获取系统联系人。
// 查询联系人指针
Cursor c = getContentResolver().query(ContactsContract.Contacts.CONTENT_URI, null, null, null, null);
while(c.moveToNext()) {
// 获取联系人姓名
System.out.println("----------->" + c.getString(c.getColumnIndex(ContactsContract.Contacts.DISPLAY_NAME)));
}
这样做还不够,我们还需要在AndroidManifest中注册相对应的权限才可以访问到联系人数据,打开
AndroidManifest,在manifest节点内添加:
<uses-permission android:name="android.permission.READ_CONTACTS" />
即可。