<data android:host="string" android:mimeType="string" android:path="string" android:pathPattern="string" android:pathPrefix="string" android:port="string" android:scheme="string" />
<intent-filter>mimeType attribute),
just a URI, or both a data type and a URI. A URI is specified by separate
attributes for each of its parts:
scheme://host:port/path or
pathPrefix or pathPattern
These attributes are optional, but also mutually dependent:
If a scheme is not specified for the
intent filter, all the other URI attributes are ignored. If a
host is not specified for the filer,
the port attribute and all the path attributes are ignored.
All the <data> elements contained within the same
<intent-filter> element contribute to
the same filter. So, for example, the following filter specification,
<intent-filter . . . >
<data android:scheme="something" android:host="project.example.com" />
. . .
</intent-filter>
is equivalent to this one:
<intent-filter . . . >
<data android:scheme="something" />
<data android:host="project.example.com" />
. . .
</intent-filter>
You can place any number of <data> elements inside an
<intent-filter> to give it multiple data
options. None of its attributes have default values.
Information on how intent filters work, including the rules for how Intent objects are matched against filters, can be found in another document, Intents and Intent Filters. See also the Intent Filters section in the introduction.
scheme://host:port/path or pathPrefix or pathPattern
이 애트리뷰트들은 선택 사항이지만, 또한 상호 간에 의존적이다: 만약 인텐트 필터에 대한 스키마scheme가 지정되지 않는다면, 다른 모든 URI 애트리뷰트들은 무시된다. 만약 인텐트 필터에 대한 호스트host가 지정되지 않는다면, 포트port 애트리뷰트와 모든 경로path 애트리뷰트는 무시된다.
동일 <intent-filter> 엘리먼트 내에 포함된 모든 <data> 엘리먼트는 동일 필터에 기여한다. 예를 들면 다음의 필터 명세는,
<intent-filter . . . >
<data android:scheme="something" android:host="project.example.com" />
. . .
</intent-filter>
아래의 것과 동일하다.
<intent-filter . . . >
<data android:scheme="something" />
<data android:host="project.example.com" />
. . .
</intent-filter>
여러분은 인텐트 필터에 다양한 데이터 옵션을 주기 위하여 <intent-filter> 안에 임의의 갯수의 <data> 엘리먼트를 놓을 수 있다. 그것의 애트리뷰트들 중 어떤 것도 디폴트 값을 가지지 않는다.
인텐트 오브젝트가 필터와 일치되는 방법에 대한 규칙을 포함하는 인텐트 필터의 동작방법에 대한 정보는 다른 문서, 인텐트와 인텐트 필터에서 찾을 수 있다. 앞에 나왔던 인텐트 필터 섹션을 또한 보라.
android:hostscheme attribute is also
specified for the filter.
Note: host name matching in the Android framework is case-sensitive, unlike the formal RFC. As a result, you should always specify host names using lowercase letters.
Note: 공식 RFC와는 달리, 안드로이드 프레임워크에서의 호스트 이름 매칭은 대소문자를 구분한다. 결과적으로 여러분은 항상 호스트 이름을 소문자로 지정해야 한다.
android:mimeTypeimage/jpeg or audio/mpeg4-generic.
The subtype can be the asterisk wildcard (*) to indicate that any
subtype matches.
Note: MIME type matching in the Android framework is case-sensitive, unlike formal RFC MIME types. As a result, you should always specify MIME types using lowercase letters.
Note: 공식 RFC MIME 타입과는 달리, 안드로이드 프레임워크에서 MIME 타입 매칭은 대소문자를 구분한다. 결과적으로 여러분은 항상 MIME 타입을 소문자를 사용해서 지정해야 한다.
android:path
android:pathPrefix
android:pathPatternpath attribute specifies a complete
path that is matched against the complete path in an Intent object. The
pathPrefix attribute specifies a partial path that is matched against
only the initial part of the path in the Intent object. The pathPattern
attribute specifies a complete path that is matched against the complete path
in the Intent object, but it can contain the following wildcards:
*') matches a sequence of 0 to many occurrences of
the immediately preceding character..*") matches any sequence of
0 to many characters.
Because '\' is used as an escape character when the string is read
from XML (before it is parsed as a pattern), you will need to double-escape:
For example, a literal '*' would be written as "\\*" and a
literal '\' would be written as "\\\\". This is basically
the same as what you would need to write if constructing the string in Java code.
For more information on these three types of patterns, see the descriptions of
PATTERN_LITERAL,
PATTERN_PREFIX, and
PATTERN_SIMPLE_GLOB in the
PatternMatcher class.
These attributes are meaningful only if the
scheme and host
attributes are also specified for the filter.
문자열이 XML로부터 읽어질 때(그것이 패턴으로써 분석되기 전에) “\”는 이스케이프escape 문자로써 사용되기 때문에, 여러분은 두 개의 이스케이프escape가 필요할 것이다.: 예를 들어 글자 그대로인 ‘*’는 “\\*”로 작성되어질 것이고, 글자 그대로인 ‘\’는 “\\\\”로 작성되어질 것이다. 이것은 여러분이 만약 Java 코드 안에서 문자열을 만들 때 작성할 필요가 있는 것과 기본적으로 같다.
이러한 세 가지 타입의 패턴에 대한 더 많은 정보에 대해서는, PatternMatcher 클래스 안의 PATTERN_LITERAL, PATTERN_PREFIX, 그리고 PATTERN_SIMPLE_GLOB에 대한 설명을 보라.
스키마scheme와 호스트host 애트리뷰트가 필터에 대해서 지정되기만 하면 이 애트리뷰트들은 의미를 갖는다.
android:portscheme and
host attributes are also specified for
the filter.android:schemescheme attribute must be set
for the filter, or none of the other URI attributes are meaningful.
A scheme is specified without the trailing colon (for example,
http, rather than http:).
If the filter has a data type set (the mimeType
attribute) but no scheme, the content: and file: schemes are
assumed.
Note: scheme matching in the Android framework is case-sensitive, unlike the RFC. As a result, you should always specify schemes using lowercase letters.
스키마scheme는 뒤에 콜론 없이 지정된다(예를 들어 http: 이라기보다는 http이다).
만약 필터가 어떤 스키마scheme도 없이 데이터 타입 설정(mimeType 애트리뷰트)을 가진다면, content: 과 file: 스키마scheme로 가정된다.
Note: RFC와는 달리, 안드로이드 프레임워크에서 스키마 매칭은 대소문자를 구분한다. 결과적으로 여러분은 항상 스키마를 소문자를 사용해서 지정해야 한다.
<action>
<category>