http://blog.csdn.net/hosterZhu/archive/2011/01/20/6154461.aspx

首先 我们要在E:\android-sdk-windows\platforms\android-8\sources\ContactsProvider 找到源码 !

因为android自带的通讯录也是通过ContentProvider对外共享数据。

贴点源码:

URI 这是ContactsProvider2.java

view plain copy to clipboard print ?
  1. static{
  2. //ContactsURImatchingtable
  3. finalUriMatchermatcher=sUriMatcher;
  4. matcher.addURI(ContactsContract.AUTHORITY,"contacts",CONTACTS);
  5. matcher.addURI(ContactsContract.AUTHORITY,"contacts/#",CONTACTS_ID);
  6. matcher.addURI(ContactsContract.AUTHORITY,"contacts/#/data",CONTACTS_DATA);
  7. matcher.addURI(ContactsContract.AUTHORITY,"contacts/#/suggestions",
  8. AGGREGATION_SUGGESTIONS);
  9. matcher.addURI(ContactsContract.AUTHORITY,"contacts/#/suggestions/*",
  10. AGGREGATION_SUGGESTIONS);
  11. matcher.addURI(ContactsContract.AUTHORITY,"contacts/#/photo",CONTACTS_PHOTO);
  12. matcher.addURI(ContactsContract.AUTHORITY,"contacts/filter/*",CONTACTS_FILTER);
  13. matcher.addURI(ContactsContract.AUTHORITY,"contacts/lookup/*",CONTACTS_LOOKUP);
  14. matcher.addURI(ContactsContract.AUTHORITY,"contacts/lookup/*/#",CONTACTS_LOOKUP_ID);
  15. matcher.addURI(ContactsContract.AUTHORITY,"contacts/as_vcard/*",CONTACTS_AS_VCARD);
  16. matcher.addURI(ContactsContract.AUTHORITY,"contacts/as_multi_vcard/*",
  17. CONTACTS_AS_MULTI_VCARD);
  18. matcher.addURI(ContactsContract.AUTHORITY,"contacts/strequent/",CONTACTS_STREQUENT);
  19. matcher.addURI(ContactsContract.AUTHORITY,"contacts/strequent/filter/*",
  20. CONTACTS_STREQUENT_FILTER);
  21. matcher.addURI(ContactsContract.AUTHORITY,"contacts/group/*",CONTACTS_GROUP);
  22. matcher.addURI(ContactsContract.AUTHORITY,"raw_contacts",RAW_CONTACTS);
  23. matcher.addURI(ContactsContract.AUTHORITY,"raw_contacts/#",RAW_CONTACTS_ID);
  24. matcher.addURI(ContactsContract.AUTHORITY,"raw_contacts/#/data",RAW_CONTACTS_DATA);
  25. matcher.addURI(ContactsContract.AUTHORITY,"raw_contacts/#/entity",RAW_CONTACT_ENTITY_ID);
  26. matcher.addURI(ContactsContract.AUTHORITY,"raw_contact_entities",RAW_CONTACT_ENTITIES);
  27. matcher.addURI(ContactsContract.AUTHORITY,"data",DATA);
  28. matcher.addURI(ContactsContract.AUTHORITY,"data/#",DATA_ID);
  29. matcher.addURI(ContactsContract.AUTHORITY,"data/phones",PHONES);
  30. matcher.addURI(ContactsContract.AUTHORITY,"data/phones/#",PHONES_ID);
  31. matcher.addURI(ContactsContract.AUTHORITY,"data/phones/filter",PHONES_FILTER);
  32. matcher.addURI(ContactsContract.AUTHORITY,"data/phones/filter/*",PHONES_FILTER);
  33. matcher.addURI(ContactsContract.AUTHORITY,"data/emails",EMAILS);
  34. matcher.addURI(ContactsContract.AUTHORITY,"data/emails/#",EMAILS_ID);
  35. matcher.addURI(ContactsContract.AUTHORITY,"data/emails/lookup/*",EMAILS_LOOKUP);
  36. matcher.addURI(ContactsContract.AUTHORITY,"data/emails/filter",EMAILS_FILTER);
  37. matcher.addURI(ContactsContract.AUTHORITY,"data/emails/filter/*",EMAILS_FILTER);
  38. matcher.addURI(ContactsContract.AUTHORITY,"data/postals",POSTALS);
  39. matcher.addURI(ContactsContract.AUTHORITY,"data/postals/#",POSTALS_ID);
  40. matcher.addURI(ContactsContract.AUTHORITY,"groups",GROUPS);
  41. matcher.addURI(ContactsContract.AUTHORITY,"groups/#",GROUPS_ID);
  42. matcher.addURI(ContactsContract.AUTHORITY,"groups_summary",GROUPS_SUMMARY);
  43. matcher.addURI(ContactsContract.AUTHORITY,SyncStateContentProviderHelper.PATH,SYNCSTATE);
  44. matcher.addURI(ContactsContract.AUTHORITY,SyncStateContentProviderHelper.PATH+"/#",
  45. SYNCSTATE_ID);
  46. matcher.addURI(ContactsContract.AUTHORITY,"phone_lookup/*",PHONE_LOOKUP);
  47. matcher.addURI(ContactsContract.AUTHORITY,"aggregation_exceptions",
  48. AGGREGATION_EXCEPTIONS);
  49. matcher.addURI(ContactsContract.AUTHORITY,"aggregation_exceptions/*",
  50. AGGREGATION_EXCEPTION_ID);
  51. matcher.addURI(ContactsContract.AUTHORITY,"settings",SETTINGS);
  52. matcher.addURI(ContactsContract.AUTHORITY,"status_updates",STATUS_UPDATES);
  53. matcher.addURI(ContactsContract.AUTHORITY,"status_updates/#",STATUS_UPDATES_ID);
  54. matcher.addURI(ContactsContract.AUTHORITY,SearchManager.SUGGEST_URI_PATH_QUERY,
  55. SEARCH_SUGGESTIONS);
  56. matcher.addURI(ContactsContract.AUTHORITY,SearchManager.SUGGEST_URI_PATH_QUERY+"/*",
  57. SEARCH_SUGGESTIONS);
  58. matcher.addURI(ContactsContract.AUTHORITY,SearchManager.SUGGEST_URI_PATH_SHORTCUT+"/*",
  59. SEARCH_SHORTCUT);
  60. matcher.addURI(ContactsContract.AUTHORITY,"live_folders/contacts",
  61. LIVE_FOLDERS_CONTACTS);
  62. matcher.addURI(ContactsContract.AUTHORITY,"live_folders/contacts/*",
  63. LIVE_FOLDERS_CONTACTS_GROUP_NAME);
  64. matcher.addURI(ContactsContract.AUTHORITY,"live_folders/contacts_with_phones",
  65. LIVE_FOLDERS_CONTACTS_WITH_PHONES);
  66. matcher.addURI(ContactsContract.AUTHORITY,"live_folders/favorites",
  67. LIVE_FOLDERS_CONTACTS_FAVORITES);
  68. matcher.addURI(ContactsContract.AUTHORITY,"provider_status",PROVIDER_STATUS);
  69. }

项目清单文件中 有ContactsProvider2的配置

view plain copy to clipboard print ?
  1. <providerandroid:name="ContactsProvider2"android:authorities="contacts;com.android.contacts"android:label="@string/provider_label"android:multiprocess="false"android:readPermission="android.permission.READ_CONTACTS"android:writePermission="android.permission.WRITE_CONTACTS">
  2. <path-permissionandroid:pathPrefix="/search_suggest_query"android:readPermission="android.permission.GLOBAL_SEARCH"/>
  3. padding-top: 0px !important; padding-right: 3px !important; padding-bottom: 0px !important; padding-left: 10px
分享到: DefaultHttpClient进行BasicAuth重复请求 ... | Android 监听ContentProvider中数据的变化 ...
  • 2011-05-20 15:42
  • 浏览 1236
  • 评论(0)
  • 分类:移动开发
  • 相关推荐
评论
发表评论

您还没有登录,请您登录后再发表评论

更多相关文章

  1. Android AsyncTask源码简单分析
  2. 如果获取android源码
  3. 使用 IntelliJ 查看 Android 源码
  4. Android:Native C源码(NDK)如何使用sqlite3进行编程?
  5. android应用软件源码
  6. 直播软件源码Android 多个ImageView拖拽互换图片

随机推荐

  1. SQLServer 数据库变成单个用户后无法访问
  2. 将ACCESS数据库迁移到SQLSERVER数据库两
  3. SQL分页语句的三种方案
  4. SQL Server手工插入标识列的方法
  5. sql语句like多个条件的写法实例
  6. 浅谈mssql access数据库 top分页方法
  7. 用SQL脚本读取Excel中的sheet数量及名称
  8. 一个删选数据的例子,使用GROUP、DISTINCT
  9. sql注入数据库修复的两种实例方法
  10. SQL多表连接查询实例分析(详细图文)