IOnReceiveContentListener.OnReceiveContent(View, ContentInfo) 메서드
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
지정된 콘텐츠를 받습니다.
[Android.Runtime.Register("onReceiveContent", "(Landroid/view/View;Landroid/view/ContentInfo;)Landroid/view/ContentInfo;", "GetOnReceiveContent_Landroid_view_View_Landroid_view_ContentInfo_Handler:Android.Views.IOnReceiveContentListenerInvoker, Mono.Android, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null", ApiSince=31)]
public Android.Views.ContentInfo? OnReceiveContent (Android.Views.View view, Android.Views.ContentInfo payload);
[<Android.Runtime.Register("onReceiveContent", "(Landroid/view/View;Landroid/view/ContentInfo;)Landroid/view/ContentInfo;", "GetOnReceiveContent_Landroid_view_View_Landroid_view_ContentInfo_Handler:Android.Views.IOnReceiveContentListenerInvoker, Mono.Android, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null", ApiSince=31)>]
abstract member OnReceiveContent : Android.Views.View * Android.Views.ContentInfo -> Android.Views.ContentInfo
매개 변수
- view
- View
콘텐츠 삽입이 요청된 보기입니다.
- payload
- ContentInfo
삽입할 내용 및 관련 메타데이터입니다. 페이로드에는 여러 항목이 포함될 수 있으며 해당 MIME 형식이 다를 수 있습니다(예: 이미지 항목 및 텍스트 항목). 페이로드에는 수신기가 View#setOnReceiveContentListener setting
지정된 MIME 형식 목록에 MIME 형식이 없는 항목도 포함될 수 있습니다. 이러한 항목의 경우 수신기는 콘텐츠를 거부하거나(기본 플랫폼 동작으로 연기) 다른 대체 논리를 실행할 수 있습니다(예: 사용자에게 적절한 메시지 표시).
반환
처리가 플랫폼에 위임되어야 하는 전달된 콘텐츠의 부분입니다. 모든 콘텐츠가 어떤 식으로든 처리된 경우 null을 반환합니다. 콘텐츠의 실제 삽입은 백그라운드에서 비동기적으로 처리될 수 있으며 이 메서드가 null을 반환하더라도 성공할 수도 있고 실패할 수도 있습니다. 예를 들어 앱이 해당 콘텐츠 형식에 대한 앱의 크기 제한을 초과하는 경우 항목을 삽입하지 않을 수 있습니다.
- 특성
설명
지정된 콘텐츠를 받습니다.
구현은 관심 있는 콘텐츠 항목을 처리하고 처리되지 않은 모든 항목을 반환하여 앱별 처리가 없는 콘텐츠에 대한 기본 플랫폼 동작을 유지해야 합니다. 예를 들어 구현은 콘텐츠 URI에 대한 처리를 제공하고(이미지 삽입 등을 지원하기 위해) 텍스트 삽입에 대한 일반적인 동작을 유지하기 위해 텍스트 처리를 플랫폼에 위임할 수 있습니다. 샘플 구현은 클래스 javadoc를 참조하세요.
<h3>다른 콘텐츠< 처리/h3><ul><li>텍스트. 이 ContentInfo#getSource() source
ContentInfo#SOURCE_AUTOFILL autofill
경우 뷰의 콘텐츠를 전달된 텍스트로 완전히 바꿔야 합니다. 자동 채우기 이외의 원본의 경우 전달된 텍스트는 현재 선택 영역을 덮어쓰거나 선택 영역이 없는 경우 현재 커서 위치에 삽입해야 합니다. <li>텍스트가 아닌 콘텐츠(예: 이미지). 위젯이 이를 지원하는 경우 콘텐츠가 인라인으로 삽입되거나 첨부 파일로 추가될 수 있습니다(완전히 별도의 보기에 표시될 수 있음). </ul>
<h3>URI 권한</h3>
android.content.Intent#FLAG_GRANT_READ_URI_PERMISSION Read permissions
는 이 수신기에 전달된 페이로드의 모든 android.content.ContentResolver#SCHEME_CONTENT content URIs
플랫폼에 의해 자동으로 부여됩니다. 사용 권한은 일시적이며 플랫폼에서 자동으로 해제됩니다.
콘텐츠 처리는 일반적으로 서비스 또는 활동에서 수행해야 합니다. 장기 실행 처리의 경우 사용하는 androidx.work.WorkManager
것이 좋습니다. 이를 구현할 때 사용 및 플래그android.content.Intent#FLAG_GRANT_READ_URI_PERMISSION FLAG_GRANT_READ_URI_PERMISSION
를 사용하여 android.content.Intent#setClipData Intent.setClipData
android.content.Intent#addFlags(int) setting
콘텐츠를 전달하여 사용 권한을 대상 서비스 또는 활동으로 확장해야 합니다.
또는 현재 컨텍스트 내에서 백그라운드 스레드를 사용하여 콘텐츠를 처리하는 경우 사용 권한이 조기에 payload
취소되지 않도록 개체에 대한 참조를 유지 관리해야 합니다.
이 페이지의 일부는 Android 오픈 소스 프로젝트에서 만들고 공유하고 Creative Commons 2.5 특성 라이선스에 설명된 용어에 따라 사용되는 작업을 기반으로 하는 수정 사항입니다.