Android 의도 와 의도 필터 (1)
하나의 의도 대상 은 Context. startActivity () 나 Activity. startActivity ForResult () 에 전달 하여 활동 을 시작 하거나 존재 하 는 활동 을 새로운 일 을 하 게 하 는 것 이다.
하나의 의도 대상 은 Context. startService () 에 전달 하여 서 비 스 를 시작 하거나 실행 중인 서비스 에 새로운 명령 을 전달 하 는 것 이다.유사 한 의 도 는 Context. bindService () 에 전달 되 어 호출 구성 요소 와 대상 서비스 사이 에 연결 을 만 들 수 있 습 니 다.옵션 으로 이 서 비 스 를 시작 할 수 있 습 니 다. 아직 실행 되 지 않 았 다 면.
임의의 방송 방법 (예 를 들 어 Context. sendBroadcast (), Context. sendOrdered Broadcast () 또는 Context. sendSticky Broadcast () 의 의도 대상 은 모든 관심 있 는 방송 수신 자 에 게 전달 된다. 많은 방송 은 시스템 코드 에서 발생 한다.
모든 예 에서 안 드 로 이 드 시스템 은 적절 한 활동, 서비스, 또는 라디오 수신 자 를 찾 아 이 의 도 를 응답 하고 필요 할 때 예화 합 니 다. 이 메시지 전송 시스템 은 중첩 되 지 않 았 습 니 다. 방송 의 도 는 방송 수신 자 에 게 만 전달 되 고 활동 이나 사람 에 게 서 비 스 를 제공 하지 않 습 니 다. 하 나 는 startActivity () 에 전 송 됩 니 다.하나의 활동 에 만 전달 되 고 서비스 나 방송 수신 자 에 게 는 영원히 전달 되 지 않 겠 다 는 의도 다.
이 문 서 는 의도 적 인 대상 에 대한 설명 으로 시작 하여 구성 요소 에 대한 안 드 로 이 드 맵 의 도 를 설명 합 니 다. 어떤 구성 요 소 를 해결 하 는 지 의도 적 인 메 시 지 를 받 아야 합 니 다. 대상 구성 요 소 를 명시 적 으로 명명 하지 않 은 의도 에 대해 서 는 잠재 적 인 목표 와 연 결 된 의도 필 터 를 대조 하여 이 의도 대상 을 테스트 하 는 것 을 포함 합 니 다.
의도 대상 Intent Objects
의도 적 인 Intent 대상 은 많은 정보 입 니 다. 이 의 도 를 받 은 구성 요소 가 관심 이 있 는 정보 (예 를 들 어 취 할 동작 과 작업 할 데이터) 와 안 드 로 이 드 시스템 이 관심 이 있 는 정보 (예 를 들 어 이 의 도 를 처리 해 야 할 구성 요소 클래스 와 대상 활동 을 어떻게 시작 하 는 지 명령) 를 포함 합 니 다.
구성 요소 이름 Component name
이 의도 한 구성 요소 이름 을 처리 해 야 합 니 다. 이 필드 는 ComponentName 대상 - 하나의 구성 요소 입 니 다. 대상 구성 요소 의 완전 합 격 된 클래스 이름과 프로그램 설명 파일 에 설 치 된 구성 요소 가 있 는 가방 의 이름 (예 를 들 어 "com. example. project") 입 니 다. 이 구성 요소 이름 의 가방 부분 은 설명 파일 에 설 치 된 가방 이름과 꼭 일치 하지 않 습 니 다.
구성 요소 이름 은 선택 할 수 있 습 니 다. 설정 되 어 있 으 면 이 의도 대상 은 지정 한 클래스 로 전 달 됩 니 다. 없 으 면 Android 는 다른 의도 대상 의 정 보 를 사용 하여 적당 한 목 표를 찾 습 니 다. - 잠시 후 설명 한 의 도 를 보고 Intent Resolution 을 해석 하 십시오.
구성 요소 이름 은 다음 과 같은 방법 을 통 해: setComponent (), setClass (), 또는 setClassName () 설정 을 통 해 getComponent () 를 통 해 읽 습 니 다.
Action
- , , 。 , :
Action
ACTION_CALL
ACTION_EDIT
ACTION_MAIN
,
ACTION_SYNC
ACTION_BATTERY_LOW
ACTION_HEADSET_PLUG
ACTION_SCREEN_ON
ACTION_TIMEZONE_CHANGED
Intent 클래스 설명 을 보면 일반적인 동작 에 대한 미리 정 의 된 상수 목록 을 얻 을 수 있 습 니 다. 다른 동작 은 Android API 의 다른 곳 에 정 의 됩 니 다. 동작 문자열 을 사용자 정의 하여 프로그램의 구성 요 소 를 활성화 할 수도 있 습 니 다. 만 든 동작 문자열 은 패키지 이름 을 접두사 로 해 야 합 니 다. 예 를 들 어 "com. example. project. SHOW COLOR".
동작 은 어느 정도 의도 의 다른 부분 이 어떻게 조직 되 는 지 결정 합 니 다. - 특히 데이터 data 와 추가 필드 extras - 는 하나의 방법 명 처럼 일부 매개 변수 와 반환 값 을 결정 합 니 다. 따라서 가능 한 한 구체 적 인 동작 명 을 사용 하여 의도 의 다른 필드 와 밀접 하 게 연결 하 는 것 이 좋 습 니 다. 다시 말 하면 구성 요소 가 처리 할 수 있 는 의도 대상 에 게 전체적인 협 조 를 정의 하 는 것 입 니 다.고립 된 동작 을 정의 하 는 것 이 아니 라
의도 대상 의 동작 은 setAction () 방법 으로 설정 하고 getAction () 방법 으로 읽 을 수 있 습 니 다.
데이터 데이터
조작 하고 자 하 는 데이터 통합 자원 식별 자 (URI) 와 그 데이터 의 다 용도 인터넷 메 일 확장 (MIME). 서로 다른 동작 에는 다양한 종류의 데이터 규격 이 수반 된다. 예 를 들 어 동작 이 ACTION EDIT 라면 데이터 필드 에는 문 서 를 편집 할 수 있 는 URI 가 포함 되 어 있 고, 동작 이 ACTION CALL 이면 데이터 필드 는 전화번호 가 될 것 이다. 호출 전화 번 호 를 포함 한 URI 이 며, 유사 한 동작 이 ACTION VIEW 이 고 데이터 필드 가 http: URI 라면 받 은 활동 은 다음 과 같다.URI 가 인용 한 데 이 터 를 불 러 오고 표시 하 는 요청 입 니 다. 데 이 터 를 처리 할 수 있 는 구성 요소 와 일치 할 때 URI 를 제외 하고 데이터 형식 (MIME 형식) 을 알 아야 합 니 다.
예 를 들 어 그림 을 표시 할 수 있 는 구성 요 소 는 소리 파일 을 재생 하 라 는 요 구 를 받 아 서 는 안 된다.
많은 경우 이 데이터 형식 은 URI 에서 추정 할 수 있 습 니 다. - 특히 content: URIs 는 데이터 가 장치 에 저장 되 어 있 고 콘 텐 츠 제공 자가 제어 하고 있 음 을 의미 합 니 다. 그러나 형식 은 의도 대상 에 표 시 될 수 있 는 설정 입 니 다. setData () 방법 은 데 이 터 를 하나의 URI 로 만 지정 합 니 다. setType () 은 하나의 MIME 형식 만 지정 할 수 있 고 setDataAndType () 은 하나의 URI 로 만 지정 합 니 다.URI 와 MIME 형식 을 동시에 지정 합 니 다. URI 는 getData () 를 통 해 읽 고 유형 은 getType () 을 통 해 읽 습 니 다.
Category
。 。 , , :
CATEGORY_BROWSABLE
- , e-mail 。
CATEGORY_GADGET
。
CATEGORY_HOME
, HOME 。
CATEGORY_LAUNCHER
。
CATEGORY_PREFERENCE
。
본문: Android 의도 와 의도 필터 (1) http://www.eoeandroid.com/thread-79766-1-1.html
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
정수 반전Udemy 에서 공부 한 것을 중얼거린다 Chapter3【Integer Reversal】 (예) 문자열로 숫자를 반전 (toString, split, reverse, join) 인수의 수치 (n)가 0보다 위 또는 ...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.