- 문법:
- 데이터 태그가
<intent-filter>의 즉시 하위 요소인 경우:
<data android:scheme="string" android:host="string" android:port="string" android:path="string" android:pathPattern="string" android:pathPrefix="string" android:pathSuffix="string" android:pathAdvancedPattern="string" android:mimeType="string" />
데이터 태그가<uri-relative-filter-group>의 즉시 하위 요소인 경우:
<data android:path="string" android:pathPattern="string" android:pathPrefix="string" android:pathSuffix="string" android:pathAdvancedPattern="string" android:fragment="string" android:fragmentPattern="string" android:fragmentPrefix="string" android:fragmentSuffix="string" android:fragmentAdvancedPattern="string" android:query="string" android:queryPattern="string" android:queryPrefix="string" android:querySuffix="string" android:queryAdvancedPattern="string" />
- 포함된 위치:
-
<intent-filter><uri-relative-filter-group> - 설명
- 데이터 사양을 인텐트 필터에 추가합니다. 사양은
mimeType속성, URI 또는 데이터 유형과 URI를 모두 사용하는 데이터 유형입니다. URI는 사양의 부분별로 개별 속성으로 지정됩니다.<scheme>://<host>:<port>[<path>|<pathPrefix>|<pathPattern>|<pathAdvancedPattern>|<pathSuffix>]URI 형식을 지정하는 이러한 속성은 선택사항이지만 상호 의존적입니다.
동일한
<intent-filter>요소에 포함된 모든<data>요소는 동일한 필터에 기여합니다. 다음 필터 사양을 예로 들겠습니다.<intent-filter . . . > <data android:scheme="something" android:host="project1.example.com" /> <data android:scheme="something-else" android:host="project2.example.com" android:path="/page1" /> ... </intent-filter>
다음과 동일합니다.
<intent-filter . . . > <data android:scheme="something" /> <data android:scheme="something-else" /> <data android:host="project1.example.com" /> <data android:host="project2.example.com" /> <data android:path="/page1" /> ... </intent-filter>
<intent-filter>내부에<data>요소를 원하는 수만큼 배치하여 여러 데이터 옵션을 제공할 수 있습니다. 속성에 기본값은 없습니다.인텐트 객체와 필터의 일치 방식에 적용되는 규칙을 포함하여 인텐트 필터의 작동 방식에 관한 자세한 내용은 인텐트 및 인텐트 필터와 매니페스트 파일 개요의 인텐트 필터 섹션을 참고하세요.
- 속성:
android:scheme- URI의 스키마 부분입니다. 이는 URI를 지정하기 위한 최소한의 필수 속성입니다. 필터에
scheme속성을 하나 이상 설정해야 하며, 그러지 않으면 다른 URI 속성이 의미가 없습니다.스키마는 후행 콜론 없이 지정됩니다(예:
http:대신http).필터에 데이터 유형(
mimeType속성 사용)이 설정되어 있지만 스키마는 설정되어 있지 않다면content:스키마와file:스키마로 가정됩니다.참고: Android 프레임워크의 스키마 일치는 RFC와 달리 대소문자를 구분합니다. 따라서 항상 소문자를 사용하여 스키마를 지정합니다.
android:host- URI 권한의 호스트 부분입니다. 이 속성은 필터에
scheme속성도 지정되어 있지 않으면 의미가 없습니다. 여러 하위 도메인을 일치시키려면 별표(*)를 사용하여 호스트에서 문자 0개 이상을 찾습니다. 예를 들어 호스트*.google.com은www.google.com,.google.com,developer.google.com과 일치합니다.별표는 호스트 속성의 첫 문자여야 합니다. 예를 들어 호스트
google.co.*는 유효하지 않습니다. 별표 와일드 카드가 첫 문자가 아니기 때문입니다.참고: Android 프레임워크의 호스트 이름 일치는 정식 RFC와 달리 대소문자를 구분합니다. 따라서 항상 소문자를 사용하여 호스트 이름을 지정합니다.
android:port- URI 권한의 포트 부분입니다. 이 속성은 필터에
scheme속성과host속성도 지정되어 있어야 의미가 있습니다. android:pathandroid:pathPrefixandroid:pathSuffixandroid:pathPatternandroid:pathAdvancedPattern- URI의 경로 부분으로,
/로 시작해야 합니다.path속성은Intent객체의 전체 경로와 일치하는 전체 경로를 지정합니다.pathPrefix속성은Intent객체의 경로 중 처음 부분만 일치하는 일부 경로를 지정합니다.pathSuffix속성은Intent객체의 경로 끝 부분과 정확하게 일치하며 이 속성은/문자로 시작할 필요가 없습니다.pathPattern속성은Intent객체의 전체 경로와 일치하는 전체 경로를 지정하지만 다음 와일드 카드를 포함할 수 있습니다.- 마침표(
.)는 모든 문자와 일치합니다. -
별표 (
*)는 바로 앞에 나온 문자 후에 나열되는 0개 이상의 모든 값을 찾습니다. -
.*: 마침표 다음에 별표를 사용하면 0자 이상 일치하는 항목을 찾습니다.
pathAdvancedPattern속성은Intent객체의 전체 경로와 일치하는 전체 경로를 지정하며, 다음의 정규식과 유사한 패턴을 지원합니다.-
마침표(
.)는 모든 문자와 일치합니다. -
집합(
[...])은 문자 범위와 일치합니다. 예를 들어[0-5]는 0부터 5까지의 한 자릿수와 일치하지만 6에서 9까지와는 일치하지 않습니다.[a-zA-Z]는 대소문자와 관계없이 모든 문자와 일치합니다. 집합은 'not'^수정자도 지원합니다. -
별표(
*) 수정자는 앞의 패턴과 0번 이상 일치합니다. -
더하기(
+) 수정자는 앞의 패턴과 한 번 이상 일치합니다. -
범위(
{...}) 수정자는 패턴이 일치할 수 있는 횟수를 지정합니다.
pathAdvancedPattern매처는 역추적 지원 없이 실시간으로 패턴의 일치를 확인하는 평가 구현입니다.\는 XML에서 문자열을 읽을 때 이스케이프 문자로 사용되므로 패턴으로 파싱되기 전에 두 번 이스케이프 처리해야 합니다. 예를 들어 리터럴*는\\*로 작성되고 리터럴\는\\\로 작성됩니다. 이는 Java 코드로 문자열을 구성할 때 작성하는 것과 같습니다.이러한 다섯 가지 유형의 패턴에 관한 자세한 내용은
PatternMatcher클래스의PATTERN_LITERAL,PATTERN_PREFIX,PATTERN_SIMPLE_GLOB,PATTERN_SUFFIX,PATTERN_ADVANCED_GLOB에 관한 설명을 참고하세요.이 속성은 필터에
scheme속성과host속성도 지정되어 있어야만 의미가 있습니다.pathSuffix및pathAdvancedPattern은 API 수준 31에서 도입되었습니다. - 마침표(
android:fragmentandroid:fragmentPrefixandroid:fragmentSuffixandroid:fragmentPatternandroid:fragmentAdvancedPattern-
URI 프래그먼트의 매처입니다.
#접두사는 포함하지 않습니다. 각 속성의 의미와 허용되는 패턴은 위에서 확인하세요.일반적으로 URI로 인코딩된 문자를 일치시키려면 속성 값에 원시(인코딩되지 않음) 형식을 포함합니다. 예를 들어
<data android:fragment="test!" />은#test!및#test%21와 일치합니다.API 수준 35에 도입되었습니다.
android:queryandroid:queryPrefixandroid:querySuffixandroid:queryPatternandroid:queryAdvancedPattern-
URI 쿼리 매개변수 (및 선택적으로 값)의 일치 항목입니다. 예를 들어
?param=value로 끝나는 URI를<data android:query="param=value" />와 일치시킬 수 있습니다.?접두사는 포함하지 않습니다. 각 속성의 의미와 허용되는 패턴은 위에서 확인하세요.일반적으로 URI로 인코딩되는 문자를 일치시키려면 속성 값에 원시(인코딩되지 않음) 형식을 포함합니다. 예를 들어
<data android:query="test!" />은?test!및?test%21와 일치합니다.API 수준 35에 도입되었습니다.
android:mimeType- MIME 미디어 유형입니다(예:
image/jpeg또는audio/mpeg4-generic). 하위유형은 모든 하위유형 일치를 나타내는 별표 와일드 카드(*)일 수 있습니다.인텐트 필터는 일반적으로
android:mimeType속성만 포함된<data>요소를 선언합니다.참고: Android 프레임워크의 MIME 유형 일치는 정식 RFC MIME 유형과 달리 대소문자를 구분합니다. 따라서 항상 소문자를 사용하여 MIME 유형을 지정하세요.
- 도입 수준:
- API 수준 1
- 참고 항목:
<action><category>
<data>
이 페이지에 나와 있는 콘텐츠와 코드 샘플에는 콘텐츠 라이선스에서 설명하는 라이선스가 적용됩니다. 자바 및 OpenJDK는 Oracle 및 Oracle 계열사의 상표 또는 등록 상표입니다.
최종 업데이트: 2025-07-27(UTC)
[[["이해하기 쉬움","easyToUnderstand","thumb-up"],["문제가 해결됨","solvedMyProblem","thumb-up"],["기타","otherUp","thumb-up"]],[["필요한 정보가 없음","missingTheInformationINeed","thumb-down"],["너무 복잡함/단계 수가 너무 많음","tooComplicatedTooManySteps","thumb-down"],["오래됨","outOfDate","thumb-down"],["번역 문제","translationIssue","thumb-down"],["샘플/코드 문제","samplesCodeIssue","thumb-down"],["기타","otherDown","thumb-down"]],["최종 업데이트: 2025-07-27(UTC)"],[],[]]