了解 uri, content provide,包括 data android:host,android:scheme(转)
Content Provider这个东西在Android平台上是最常用的共享数据的方法(似乎应用程序之间共享数据也只有这种方法吧,待求证)。虽然常用,但是这个东 西要理解透彻还是要先掌握一些基础的。URI就是Content Provider(简称CP)的基础。我们要标识一个CP,就必须用URI这个东东。这就类似于我们要通过网址来标识某个特定网站,实际上网址URL本身 就是一种URI。URI全称Uniform Resource Identifier, 它包括了URL和URN。而关于它们的详细解释,有心的朋友可以参考RFC3896:http://tools.ietf.org/html /rfc3986。URI不仅可以标识特定CP,还可以标识CP中特定的数据库表,就好像URL不仅可以标识特定网站,也可以标识这个网站某个特定网页一 样。实际上在Android平台上URI的用途更广泛一些,它还用于Intent中data的标识。
就Android平台而言,URI主要分三个部分:scheme, authority and path。其中authority又分为host和port。格式如下:
scheme://host:port/path
举个实际的例子:
content://com.example.project:200/folder/subfolder/etc
\---------/ \---------------------------/ \---/ \--------------------------/
scheme host port path
\--------------------------------/
authority
现在大家应该知道data flag中那些属性的含义了吧,看下data flag
<data android:host="string"
android:mimeType="string"
android:path="string"
android:pathPattern="string"
android:pathPrefix="string"
android:port="string"
android:scheme="string" />
转自:http://goldenrod-z4.iteye.com/blog/978194
分享到:
相关推荐
在Android开发中,`android:scheme` 是一个关键的概念,用于构建自定义URL协议,使得外部应用或系统可以通过特定的URI来启动我们的应用程序中的特定Activity。这个特性在很多场景下非常有用,比如分享链接、广告点击...
<data android:scheme="myapp" android:host="sub" android:path="/path/to/content" /> ``` 在这个例子中,只有形如"myapp://sub/path/to/content"的URI才会启动"MySubActivity"。 在应用内部,我们可以使用`...
### Delphi-XE5 开发 Android URI 知识点详解 #### 一、URI 的基本概念及作用 在 Delphi-XE5 开发 Android 应用时,理解 URI(Uniform Resource Identifier)的基本概念及其作用至关重要。URI 是一种用于标识某一...
Data URI Scheme是一种URI(统一资源标识符)方案,它允许在单个URI中包含资源的数据,而不是提供指向资源的地址。其基本格式如下: ```text data:[][;base64],<data> ``` 其中,`<mediatype>`是资源的MIME类型,...
Uri是Android中用于表示资源位置的数据结构,它包含了访问特定资源所需的所有信息,如协议、服务器地址、路径等。在TextView中,Uri通常以超链接的形式存在,比如http://或mailto:开头的字符串。 2. **TextView的...
数据部分的`<data>`标签提供了URI匹配规则,`android:host`和`android:scheme`组合起来定义了一个URI模式。这样,当其他应用或者浏览器试图打开符合这个模式的URI时,Android系统会寻找相应的Intent过滤器,并调用...
在Android开发中,Scheme协议是一种实现应用程序间交互的重要机制。它允许一个应用通过特定的URL格式启动另一个应用,实现应用间的深度链接。本篇将详细探讨Android应用跳转Scheme协议的相关知识点。 首先,理解...
### Android根据URI获取真实路径详解 #### 概述 在Android开发过程中,处理文件路径时经常需要将一个`Uri`转换成真实的文件路径。尤其是在处理用户通过文件选择器选取的图片或文件时,通常会得到一个`Uri`,而这个...
`android:scheme="file"`、`android:host="*"` 和 `android:pathPattern=".*\\.txt"` 一起确保了只有.txt文件会被我们的应用接收。 接下来,你需要创建一个Activity来处理这些文件。在上面的示例中,我们创建了名为...
"Android Uri详解" Android Uri是Android系统中的一种通用资源标志符(Universal Resource Identifier, 简称"URI"),它代表要操作的数据。Android 上可用的每种资源 - 图像、视频片段等都可以用 Uri 来表示。Uri ...
在Android开发中,`Scheme`是一种非常重要的机制,它允许应用程序之间进行交互和通信。`AndroidSchemeDemo`是一个示例项目,旨在展示如何在Android应用中实现自定义scheme的跳转。通过创建并处理自定义scheme,...
6. **intent URI**:Android Intent可以携带URI,用于启动其他应用组件,如`intent://scan/#Intent;package=com.google.zxing.client.android;scheme=zxing;end`,这种URI用于启动二维码扫描器。 7. **数据URI**:...
通过查看这些项目,你可以更深入地了解scheme的使用方法,包括如何在不同的场景下使用scheme,如何传递参数,以及如何处理回调。 总结来说,Scheme跳转在Android开发中是一种实用的功能,允许应用之间进行深度链接...
5. **事件处理**:为了实现电话、邮件和地图的跳转,需要绑定对应的意图(Intent),比如`Intent(Intent.ACTION_DIAL, Uri.parse("tel:18890406862"))`用于拨打电话,`Intent(Intent.ACTION_VIEW, Uri.parse("mailto:...
<data android:scheme="bapp" android:host="auth" android:path="/login" /> ``` 2. **构建Uri**:在A_APP中,我们需要构造一个包含B_APP所需信息的Uri。这里因为涉及到两个应用包,可能意味着A_APP需要在Uri...
Android 图片文件的路径地址与 Uri 的相互转换方法 Android 开发中常遇到的问题之一是图片文件的路径地址与 Uri 之间的相互转换。这个问题可能会让许多开发者感到困惑和不知所措。下面我们将详细介绍如何将图片文件...
Android 中 Uri 和 Path 之间的转换示例代码分析 Android 中 Uri 和 Path 之间的转换是 Android 开发中非常重要的一部分,特别是在拍照、图片处理和文件存储等方面。本篇文章主要介绍了 Android 中 Uri 和 Path ...
在Android系统中,Content Provider是四大组件之一,它是应用程序间数据共享的核心机制。Content Provider允许一个应用暴露其数据,使得其他应用可以读取或者写入这些数据,甚至跨应用程序进行数据交换。这篇博客...
总的来说,了解和熟练运用`android.provider`包中的`URI`对于Android应用开发至关重要,特别是涉及到与系统服务或数据交互的部分。而通过专门的工具或方法查看这些`URI`的详细内容,可以帮助开发者深入理解Android的...
在`frameworks/base/core/java/android/content/Intent.java`中,可以看到Intent如何匹配数据URI以及如何启动相应组件的过程。 此外,Android的工具链也是开发过程中的重要环节,如Android Studio的Gradle插件、ADB...