您需要实施该计划:
内容://scheme解释于IETF "BCP35”,它会引导您查看IANA "统一资源标识符 (URI) 方案”,解释如下:
URI 方案 |模板 | |描述 |状态 | |参考 |笔记
内容 |省份/内容|内容 |临时|戴夫·塞勒| -
该链接将引导您访问此信息:
“(最后更新于2012年9月23日)
资源标识符 (RI) 方案名称:内容
状态:临时
方案语法:
内容提供商/
方案语义:
访问 Android 内容提供商。
编码注意事项:
未知,谨慎使用。
使用此方案名称的应用程序/协议:
对 Android Content Provider 执行查询
互操作性注意事项:
未知,谨慎使用。
可能不适合在公共互联网上公开使用。
安全考虑:
未知,谨慎使用。
Contact:
登记方:Dave Thaler
方案创建者:开放手机联盟
作者/变更控制者:
注册方或经核实代表的人
计划创建者。请参阅之前的答案。
参考:
http://en.wikipedia.org/wiki/Open_Handset_Alliance,
http://developer.android.com/guide/topics/providers/content-providers.html
(文件创建于 2012 年 9 月 23 日)”。
参考最后一个网址“Android 开发者 > 文档 > 指南 > 内容提供者“ 了解更多信息:
“内容提供程序可以帮助应用程序管理对自身存储的数据、其他应用程序存储的数据的访问,并提供与其他应用程序共享数据的方法。它们封装数据,并提供定义数据安全性的机制。内容提供程序是标准接口它将一个进程中的数据与另一进程中运行的代码连接起来。实现内容提供程序有很多优点。最重要的是,您可以配置内容提供程序以允许其他应用程序安全地访问和修改您的应用程序数据...
...
许多其他类依赖于内容提供商 class:
如果您正在使用这些类中的任何一个您还需要在应用程序中实现内容提供程序。请注意,使用同步适配器框架时,您还可以创建存根内容提供程序作为替代方案。有关此主题的更多信息,请参阅创建存根内容提供者.
From: 创建存根内容提供者:
...
添加存根内容提供商
要为您的应用程序创建存根内容提供程序,请扩展该类内容提供商并存根其所需的方法。以下代码片段向您展示了如何创建存根提供程序:
在科特林中:
/*
* Define an implementation of ContentProvider that stubs out
* all methods
*/
class StubProvider : ContentProvider() {
/*
* Always return true, indicating that the
* provider loaded correctly.
*/
override fun onCreate(): Boolean = true
/*
* Return no type for MIME type
*/
override fun getType(uri: Uri): String? = null
/*
* query() always returns no results
*
*/
override fun query(
uri: Uri,
projection: Array<String>,
selection: String,
selectionArgs: Array<String>,
sortOrder: String
): Cursor? = null
/*
* insert() always returns null (no URI)
*/
override fun insert(uri: Uri, values: ContentValues): Uri? = null
/*
* delete() always returns "no rows affected" (0)
*/
override fun delete(uri: Uri, selection: String, selectionArgs: Array<String>): Int = 0
/*
* update() always returns "no rows affected" (0)
*/
override fun update(
uri: Uri,
values: ContentValues,
selection: String,
selectionArgs: Array<String>
): Int = 0
}
...
在清单中声明提供者
同步适配器框架通过检查您的应用程序是否在其应用程序清单中声明了提供程序来验证您的应用程序是否具有内容提供程序。要在清单中声明存根提供程序,请添加 provider> 元素具有以下属性:
...
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.android.network.sync.BasicSyncAdapter"
android:versionCode="1"
android:versionName="1.0" >
<application
android:allowBackup="true"
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme" >
...
<provider
android:name="com.example.android.datasync.provider.StubProvider"
android:authorities="com.example.android.datasync.provider"
android:exported="false"
android:syncable="true"/>
...
</application>
</manifest>
请参阅上面的 URL 以获取完整的文档以及本简短答案中未包含的更多链接。