Android CONTENT TYPE - vnd.android.cursor.dir是Android定义的标准常量



我对内容类型的问题有非常基本的了解。

我看了很多例子和文字来解释上述术语,但仍然有一些基本的理解问题。有人能帮我澄清一下吗?

在android记事本示例和许多其他示例中,都提到了vnd.android.cursor。Dir/解析为目录和vnd.android.cursor中的项列表。Item/是指目录中的特定项。

这个vnd.android.cursor.dir是android定义的标准常量吗?这是从哪里来的呢?,或者我可以把它改成

vn.com.android.myexample.dir/

这是如何解决的,它的目的是什么,为什么不使用完整的CONTENT_URI?

对不起,我完全迷路了,我不明白这个。

文档:https://developer.android.com/guide/topics/providers/content-provider-basics#MIMETypeReference

ContentProvider返回的MIME类型。getType有两个不同的部分:

type/subType

类型部分表示ContentProvider为给定URI返回的已知类型,因为查询方法只能返回游标,所以类型应该始终是:

  • vnd.android.cursor.dir用于期望游标包含0到无限项

  • vnd.android.cursor.item用于期望游标包含1项

子类型部分可以是众所周知的子类型,也可以是应用程序独有的子类型。

所以当使用ContentProvider时,你可以自定义MIME类型的第二个子类型部分,但不能自定义第一个部分。例如,应用程序的有效MIME类型ContentProvider可以是:

vnd.android.cursor.dir/vnd.myexample.whatever

从ContentProvider返回的MIME类型可以被Intent用来决定启动哪个activity来处理从给定URI检索到的数据

这是从哪里来的?,或者改成vn.com.android.myexample.dir/

不,因为"vnd"代表MIME注册树中的供应商,在本例中是android。

最新更新