【问题标题】:Android Content provider listAndroid 内容提供商列表
【发布时间】:2009-07-27 10:46:18
【问题描述】:

我在哪里可以获得 Android 开箱即用的 Content Provider 的完整列表?
具体来说,我正在寻找列出收到的 SMS 的内容提供商。

【问题讨论】:

    标签: android android-contentprovider


    【解决方案1】:

    在 SDK 文档的 android.provider 包中列出了公开可用的:

    http://developer.android.com/reference/android/provider/package-summary.html

    所有其他的都没有记录,大概是有原因的。欢迎您搜索那些扩展ContentProvider 的类的Android 源代码,可能使用Google Code Search。而且,如果您正在改进 Android 固件,您还可以在其中一个 Android open source project lists 上进行查询,以了解添加特定所需功能的最佳方式。

    【讨论】:

    • 有些是无证的,因为它们是为特定目的而创建的,并且不能保证它们会一直存在 - 请参阅来自 Google 的 Tim Bray 的这篇博文:Be Careful With Content Providers。他还提供了如何通过查看源代码来找到其他人的提示。
    【解决方案2】:

    SMS 的内容提供程序已从 Android 1.5 的 SDK 中移除。但它在早期的 SDK 中可用。

    使用这些来获取所需的 URI

    Uri.parse("content://sms")
    Uri.parsr("content://sms/inbox")
    Uri.parsr("content://sms/sent")
    etc
    

    请记住,由于这些是无证的,它们将来可能会发生变化。

    更多细节请查看android源代码中的core/java/android/provider/Telephony.java

    【讨论】:

    • Prashast,这在 SDK 2.2 中是否可用,如果没有,我如何访问短信收件箱?
    • 不幸的是,这些仍然没有记录。不过,您仍然可以在 2.2 手机上使用它们。
    【解决方案3】:

    您可以使用 adb shell dumpsys > dumpsys.txt 并在该文件中搜索“内容提供者”。从那里你可以看到列表

    【讨论】:

      【解决方案4】:

      你可以使用下一行adb shell dumpsys | grep Provider{

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2013-07-01
        • 2011-04-18
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2019-06-28
        相关资源
        最近更新 更多